harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tomek Maciejewski <tomek.maciejew...@gmail.com>
Subject Re: [GSoC] GUI for jar tool
Date Fri, 10 Apr 2009 01:19:05 GMT

The purpose was to send you more detailed description of the additional 
GUI tool and to hear your comments on it:) I have already applied for 
jar tool and it is rather too late to send application for another one.


Alexei Fedotov pisze:
> Hello Tomek,
> This is an interesting letter, though I feel that I miss the purpose
> of the post. If Mark asked you to use a mail list for discussing
> technical details, this was a good start. If you want to convince Mark
> to be your mentor, then it worth asking him which tools he believes
> are worth to be developed.
> Thanks!
> On Thu, Apr 9, 2009 at 1:29 AM, Tomek Maciejewski
> <tomek.maciejewski@gmail.com> wrote:
>> Hi,
>> I have got an email from Mark that it was not your intention to propose jar
>> tool as a part of GSoC program, because of the simplicity of this task. I
>> agree with you that it is quiet simple task, maybe too simple ;-) However I
>> was asked to provide some detailed information about the GUI tool I was
>> intended to provide (as an addition to console one). I have written down
>> some major functionality of such interface. I must mention that you can find
>> some of the descriptions not complete, that's because I have planned it
>> earlier, only as a small addition and haven't had enough time to create a
>> coherent vision. I would like to know what do out think about it? Will
>> Apache Harmony benefit from such kind of tool? Or maybe it is completely
>> unnecessary? ;)
>>        This tool would consist of two main parts: file navigator and main
>> window. As a file navigator I understand the directories tree, as a main
>> window - the normal window to display files (similar to the one from "My
>> computer", etc.). There would be also some toolbar and some menu. Below, you
>> can find major use cases I have thought about:
>> 1. Creating JAR file
>> This is one of the basic functionalities. User will be able to select proper
>> file and directories he wants to pack into archive. Then he will choose
>> 'Create JAR' option from menu or toolbar. The settings window will appear
>> and user will be able to specify several options, like:
>> - Name and location of output file
>> - JAR index creation (yes/no)
>> - JAR signing settings
>> - Set Manifest and entry point values
>> - Create optional JAD descriptor
>> 2. Listing JAR file
>> When user marks the JAR file in navigator, he will see its content (included
>> files and directories) in main window, and will be able to navigate through
>> it.
>> 3. Extracting from JAR
>> Extracting process will be similar to the JAR listing. But, user will be
>> able to mark whole JAR or just a subset of included resources, and choose
>> "Extract from" button. He will be also able to specify desired location.
>> 4. Updating the JAR file
>> User will be able to drag&drop additional files to JAR archive or remove the
>> existing ones. It will be also possible to change Manifest, generate or
>> remove index or sign a JAR.
>> 5. Find class in JAR
>> GUI will provide option to search existing JAR files for some specified
>> class. User will select JARs and specify name of the class he want to search
>> for. If program finds the specified class, it will notify user about its
>> location.
>> 6. JAR repositories
>> The last functionality will be possibility to group JAR files into JAR
>> repository. User will be able to create one or more virtual repositories
>> aggregating JAR archives. Such solution will be quiet comfortable for end
>> users, and will also provides fast way to search JARs for specified class,
>> because it will be possible to invoke search on logic repository (all JARs
>> in repository).
>> Summing up, I think that for some cases console interface (like the one
>> provided by Sun) is slightly better, especially if you are familiar with it.
>> But there exist some cases where additional GUI tool can make difference.
>> The most popular case is when you want to integrate functionality of several
>> tools like jar, jarsigner, jar preverification tool etc. The next advantage
>> is possibility to save your preferred settings to reuse them in future (like
>> information about JAR repositories). Additionally GUI may be a good start
>> point for users, who start with Java. In Sun's JVM you can find several GUI
>> tools, like jconsole or visualvm. Of course these tools are little
>> different, and it would be hard to imagine console version of visualvm ;-)
>> But it is commonly known that GUI tools are quiet attractive for people
>> (more than console).
>> Cheers,
>> Tomek

View raw message