Command line operations in java

hi there,
is it possible to create a java program that can perform a specified command line operation?
regards

hi there,
is it possible to create a java program that can
perform a specified command line operation?
regardsYes, thats what the String[] args in public static void main(String[] args) is for.

Similar Messages

  • Java API Calls for command line operations

    I would like to use the command line operations programmatically from Java, or PL/SQL.
    I would like to parse a XML file. From DOS Command line I can issue a ifsput test.xml and I can have the file parsed and stored in the database.
    Can I do the same thing programmatically using java or plsql from database.
    Thanks
    Ramna

    The following code allows you to parse an XML file. In this case it parses a string containing a SimpleUserDefinition.
    package ifs.demo.common.users;
    import oracle.ifs.beans.*;
    import oracle.ifs.beans.parsers.Parser;
    import oracle.ifs.beans.parsers.SimpleXmlParser;
    import oracle.ifs.common.*;
    import java.io.File;
    import java.io.StringReader;
    import java.io.FileNotFoundException;
    import ifs.demo.vcard.type.Vcard;
    import ifs.demo.vcard.parser.VcardParser;
    import java.util.Locale;
    import java.util.Hashtable;
    public class UserCreator extends Object {
    private static LibrarySession getConnection(String user,String password,String serviceName, String schemaPassword)
    throws IfsException
    LibraryService service = new LibraryService();
    CleartextCredential me = new CleartextCredential(user,password);
    ConnectOptions connect = new ConnectOptions();
    connect.setLocale(Locale.getDefault());
    connect.setServiceName(serviceName);
    connect.setServicePassword(schemaPassword);
    return service.connect(me,connect);
    private static void createUser(LibrarySession ifs)
    throws IfsException
    String simpleUserString = "<?xml version = '1.0' standalone = 'yes'?>\n"
    + "<SimpleUser>\n"
    + " <UserName>TestUser2</UserName>\n"
    + " <Password>ifs</Password>\n"
    + " <HomeFolderRoot>/home</HomeFolderRoot>\n"
    + "</SimpleUser>\n";
    StringReader userDefinition = new StringReader(simpleUserString);
    SimpleXmlParser xmlParser = new SimpleXmlParser(ifs);
    xmlParser.parse(userDefinition,null,null);
    public static void main(String[] args)
    try {
    LibrarySession ifs = getConnection("system","manager","IfsDefault","manager");
    ifs.setAdministrationMode(true);
    createUser(ifs);
    } catch (IfsException e) {
    IfsException.setVerboseMessage(true);
    e.printStackTrace();
    Note that you ask about doing this from the database. If you mean that you want to run this code from inside the database the answer is not supported in 1.1. What you would need to do is use Oracle Advanced QUeuing to send a message, containing the XML to a process running outside the database and have that process connect to iFS and perform the parsing.
    null

  • Permission problems with command line CVS and Java CVS App

    Greetings,
    I'm part of a moderately sized website development team which recently upgraded to MacBook Pros (dual core) running OS 10.4.9. One of the primary tools we use in our day to day work is the open source concurrent versioning system (CVS). We've noticed a distressing issue running CVS on our macbook pros: there seems to be a problem with the way these new machines handle permissions on the directories/files that CVS uses to manage files.
    The error occurs when the CVS application, in this case both command line CVS and GUI CVS application named SmartCVS, tries to rename a temporary file named Entries~ to its new name Entries (no ~). It looks like this:
    java.io.IOException: Could not rename file
    /Users/[USER]/Sites/[MODULE]/lib/CVS/Entries~ to
    /Users/[USER]/Sites/[MODULE]/lib/CVS/Entries
    at smartcvs.JP.a(SourceFile:125)
    at smartcvs.JP.a(SourceFile:113)
    We've noticed that if we open up a get info window on the directory we're downloading, and choose "Apply to enclosed items" right when we start the download process, the issue will be resolved, presumably because the permissions are being set on the subdirectories as the download is taking place.
    We've checked the permissions on the overall ~/Sites/ directory numerous times, and they always seem to be set correctly as drwxr-xr-x. It's within this folder that CVS creates a directory with the CVS module name and downloads all the contained files, so we don't see why it would be having issues completing this successfully. We also checked to ensure the GUI CVS application is running under the current user on the machine: it does.
    Has anyone run into issues like this in the past? Is there more information I could provide to further clarify the problem we're having?
    Thanks for any input you have!

    Thanks for asking Jeff, yes one place we are seeing this error is Java application SmartCVS, though the results posted here are from a normal command line CVS checkout.
    ===
    Checkout command:
    cvs co [MODULE]
    ===
    Error:
    cvs [checkout aborted]: cannot rename file CVS/Entries.Backup to CVS/Entries: No such file or directory
    ===
    ID:
    uid=502([USER]) gid=502([USER]) groups=502([USER]), 81(appserveradm), 79(appserverusr), 80(admin)
    ===
    LS -ALN
    Computer:~/Sites [USER]$ ls -aln
    drwxr-xr-x 28 502 502 952 Jun 4 13:11 Sites
    Computer:~/Sites/[MODULE] [USER]$ ls -aln
    drwxr-xr-x 38 502 502 1292 Jun 4 13:33 www_root
    Computer:~/Sites/[MODULE]/www_root [USER]$ ls -aln
    drwxr-xr-x 32 502 502 1088 Jun 4 13:33 [SUBDIR1]
    Computer:~/Sites/[MODULE]/www_root/[SUBDIR1] [USER]$ ls -aln
    drwxr-xr-x 5 502 502 170 Jun 4 13:33 [SUBDIR2]
    Computer:~/Sites/[MODULE]/www_root/[SUBDIR1]/[SUBDIR2] [USER]$ ls -aln
    drwxr-xr-x 4 502 502 136 Jun 4 13:33 [SUBDIR3]
    Computer:~/Sites/[MODULE]/www_root/[SUBDIR1]/[SUBDIR2]/[SUBDIR3] [USER]$ ls -aln
    drwxr-xr-x 6 502 502 204 Jun 4 13:33 CVS
    Computer:~/Sites/[MODULE]/www_root/[SUBDIR1]/[SUBDIR2]/[SUBDIR3]/CVS [USER]$ ls -aln
    total 32
    drwxr-xr-x 6 502 502 204 Jun 4 13:33 .
    drwxr-xr-x 4 502 502 136 Jun 4 13:33 ..
    -rw-r--r-- 1 502 502 45 Jun 4 13:33 Entries
    -rw-r--r-- 1 502 502 45 Jun 4 13:33 Entries.Log
    -rw-r--r-- 1 502 502 48 Jun 4 13:33 Repository
    -rw-r--r-- 1 502 502 63 Jun 4 13:33 Root
    MacBook Pro / MacPro Mac OS X (10.4.9)

  • Passing command line argument in java

    I was writting a calendar pogram that took user input from the command line. What I want to know is how can I write my program so that if the user doesn't enter the info. it will automatically assign a value to the variable in the array, eg:
    if they typed: java calendarmonth 10 2005
    they would get a printout for the calendar month of October 2005, but I want it so that if they typed
    java calendarmonth 10
    it would automatically assign they year to be the current year, and if they typed
    java calendarmonth
    it would auctomattically assign the current month and year to the program, heres the source code:
    import javax.swing.JOptionPane;
    import java.util.*;
    public class calendarmonth {
         /** Main method */
         public static void main(String argv[]) {
              String monthString = argv[0];
              int month = Integer.parseInt(monthString);
              String yearString = argv[1];
              int year = Integer.parseInt(yearString);
              printMonth(year, month);
              if (month > 12) {
              System.out.println("Invalid Number Please Try");
         //code to perform OK action
              /** Print the calendar for a month in a year */
              static void printMonth(int year, int month) {
                   //Print the heading of the calendar
                   printMonthTitle(year, month);
                   //Print the headings of the calendar
                   printMonthBody(year, month);
              /** Print the month title, e.g., May, 1999 */
              static void printMonthTitle(int year, int month) {
                   System.out.println(" " + getMonthName(month)
                   + " " + year);
                   System.out.println("------------------------------");
                   System.out.println(" Sun Mon Tue Wed Thu Fri Sat");
                   /** Get the English name for the month */
                   static String getMonthName(int month) {
                        String monthName = null;
                        switch (month) {
                             case 1: monthName = "January"; break;
                             case 2: monthName = "February"; break;
                             case 3: monthName = "March"; break;
                             case 4: monthName = "April"; break;
                             case 5: monthName = "May"; break;
                             case 6: monthName = "June"; break;
                             case 7: monthName = "July"; break;
                             case 8: monthName = "August"; break;
                             case 9: monthName = "September"; break;
                             case 10: monthName = "October"; break;
                             case 11: monthName = "November"; break;
                             case 12: monthName = "December"; break;
                        return monthName;
    /** Print month body*/
    static void printMonthBody(int year, int month){
    //Get start day of the week for the first date in the month
    int startDay = getStartDay(year, month);
    //Get number of days in the month
    int numberOfDaysInMonth = getNumberOfDaysInMonth(year, month);
    //Pad space before the first day of the month
    int i = 0;
    for (i = 0; i < startDay; i++)
         System.out.print(" ");
    for (i = 1; i <= numberOfDaysInMonth; i++) {
    if (i < 10)
    System.out.print(" " + i);
    else
    System.out.print(" " + i);
    if ((i + startDay) % 7 == 0)
         System.out.println();
         System.out.println();
    /** Get the start day of the first day in a month */
    static int getStartDay(int year, int month) {
    //Get total number of days since 1/1/1800
    int startDay1800 = 3;
    int totalNumberOfDays = getTotalNumberOfDays(year, month);
    //Return the start day
    return (totalNumberOfDays + startDay1800) % 7;
    /** Get the total number of days since Jan 1, 1800 */
    static int getTotalNumberOfDays(int year, int month) {
    int total = 0;
    // Get the total days from 1800 to year - 1
    for (int i = 1800; i < year; i++)
    if (isLeapYear(i))
    total = total + 366;
    else
    total = total + 365;
    // Add days from Jan to the month prior to the calendar month
    for (int i = 1; i < month; i++)
    total = total + getNumberOfDaysInMonth(year, i);
    return total;
    /** Get the number of days in a month */
    static int getNumberOfDaysInMonth(int year, int month) {
    if (month == 1 || month == 3 || month == 5 || month == 7 ||
    month == 8 || month == 10 || month == 12)
    return 31;
    if (month == 4 || month == 6 || month == 9 || month == 11)
    return 30;
    if (month == 2) return isLeapYear(year) ? 29 : 28;
    return 0; // If month is incorrect
    thanks
    /** Determine if it is a leap year */
    static boolean isLeapYear(int year) {
    return year % 400 == 0 || (year % 4 == 0 && year % 100 != 0);
    }

    hey smallsouljah , to use code tags just put your code inside code tags.
    to create code tags you just need to press the button code that is located bellow the subject, this will automatically create code tags.
    System.out.println("testing");
    try yourself.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Numerical Command-Line Arguments in Java

    Hi I am new to Java and am a little confused about setting up command-line arguments. From what I have read, the arguments are put in the args array of the main method.
    So accessing or using them would use args[n] right?
    But the args is a string array (String[] args). Therefore what would I need to do if I wanted to treat the arguments as numbers and not strings? E.g. I wanted to apply mathematical functions to the arguments.
    I believe to do this I would need a Integer.parseInt( string ).
    This is what I have tried:
    public static void main(String[] args) {
              int firstArg = Integer.parseInt(args[1]);
              System.out.println(firstArg);
    where argument 1 is "23".
    This compiles but I get a Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
         at the "int firstArg = Integer.parseInt(args[1]);" line.
    Can someone tell me what I am doing wrong and a small over view on command line arguments would also be welcome :D.
    Thanks

    Oh yeah.. I need to tattoo args[0] to my forehead. Thanks its now working.
    Edited by: Sunny_B on Apr 20, 2008 1:21 PM

  • Command line args from java to C++

    Hi
    I want to pass command line arguemnts argc and argv from java to C++. I have browsed the net and most of them suggested that I declare the jni statement with jObjectarray.
    I saw an example at http://www.csc.calpoly.edu/~fouzi/crossroads/Arguments.c
    It said
    #include "/home/java/linux/jdk118/include/jni.h"
    #include "Arguments.h"
    #include <stdio.h>
    JNIEXPORT void JNICALL
    Java_Arguments_setArgs (JNIEnv *jenv, jobject job, jobjectArray oarr)
    /* obtain the size the the array with a call to the JNI function
    GetArrayLength()                              */
    jsize argc = (*jenv)->GetArrayLength(jenv, oarr);
    /* Declare a char array for argv */
    char const* argv[128];
    int i;
    for (i = 1; i < argc + 1; i++) {
    /* obtain the current object from the object array */
    jobject myObject = (*jenv)->GetObjectArrayElement(jenv, oarr, i-1);
    /* Convert the object just obtained into a String */
    const char str = (jenv)->GetStringUTFChars(jenv,myObject,0);
    /* Build the argv array */
    argv[i] = str;
    /* print the argv array to the screen */
    printf ("argv[%i] = %s\n",i,argv);
    /* Free up memory to prevent memory leaks */
    (*jenv)->ReleaseStringUTFChars(jenv, myObject, str);
    // Increment argc to ajust the difference between Java and C arguments
    argc++;
    // Call a pipeline simulator function which uses command line arguments
    start(argc,argv);
    return;
    That is what I have where the start method is declared like this:
    void start(int argc, /* Argument count */ char argv[] / Argument strings */) {
    But I get a warning when I build the C routine. The warning arises when I am calling the start method.
    The warning says:
    f:\jni\dsaccess.c(711) : warning C4090: 'function' : different 'const' qualifiers
    f:\jni\dsaccess.c(711) : warning C4024: 'start' : different types for formal and actual parameter 2
    Can you help?
    Thanks
    Lakshmi

    1. Your array building looks bogus: Are you missing an index?
    2. You claim to be calling a "method". Are you? Or is it a subroutine?

  • Using Command Line Arguments with JAVA

    Hi,
    we are using an app called ImageMagick to scale and modify images before they are uploaded to a webserver.
    ImageMagick is called from our Objectiv-C app via
    command line.
    is there a way to this in Java?
    Regards
    Eckbert

    So, ur question is not developing a Java application that
    will do the 'image conversion'; but, your message
    conveys that u want to know how to invoke a Java program built by 'imagemagick' that takes command line arguments?
    Am I right?
    If that's the case, u must look into the documentation
    given along with the download'ed piece of software
    for identifying the 'starting point of the program'. i.e., the
    class that contains the 'main' method! And after you
    identify that class [Eg. ImageMagickStart] then you'll
    have to invoke as follows:
    [you must have Java installed in ur system!]
    c:>java ImageMagickStart
    If the program was written intelligently it must print all
    the command-line arguments required by the above
    program by executing the above command, and from that
    you can identify!
    -RK

  • Program runs in eclipse but in command line I need java -cp .

    I thought I understood what the classpath variable was all about. I thought it was the directory where the java standard classes were, namely the bin directory of your Java directory. However I've been using Eclipse for the first time and the programs compile and run fine in Eclipse, but in my command line I need to do java -cp . [compiled class] to make it run. Can somebody explain why? Doesn't java normally look in the current directory for the executing classes?
    Also I just checked out my CLASSPATH variable and I see C:\Program Files\Java\jre1.5.0_04\lib\ext\QTJava.zip which doesn't seem right to me. Can somebody explain what this is all about? I thought when you installed the Java SDK (JDK) it sets your classpath and everything.

    I thought I understood what the classpath variable
    was all about. I thought it was the directory where
    the java standard classes were, namely the bin
    directory of your Java directory.There is nothing correct about this statement. The classpath defines where your classes, packages and JARs are. /bin should be in PATH, and the J2SE standard classes don't need to be referenced in any variable.
    However I've been
    using Eclipse for the first time and the programs
    compile and run fine in Eclipse, but in my command
    line I need to do java -cp . [compiled class] to make
    it run. Can somebody explain why?Because the Eclipse project defines a classpath of its own (see Proprties-> Build Path) and doesn't give a damn about any system variable.
    Doesn't java
    normally look in the current directory for the
    executing classes?No. It looks in the classpath, nowhere else.
    Also I just checked out my CLASSPATH variable and I
    see C:\Program
    Files\Java\jre1.5.0_04\lib\ext\QTJava.zip which
    doesn't seem right to me. Can somebody explain what
    this is all about? Another superfluous setting. Libs in /lib/ext are automatically in the classpath.
    I thought when you installed the
    Java SDK (JDK) it sets your classpath and everything.How would it know where your classes are?

  • Clear Command Line Console from Java

    Is there a way to clear the dos/shell console screen from a java program (the same way as cls would do in dos ir clear would do in unix) without making a Runtime.exec call??
    Thanks for your time
    wwe8

    What console window are you talking about?
    1- You might be starting a java application in a console window.
    2-Or it might be another console window.
    3-You might be starting a console window in java via Runtime.exec().
    For 1 and 2 you would need a JNI, platform specific solution. I believe the java testing tools do this, so if you got one of those it might provide an interface for this.
    If 3, then you would use the input stream to pass the command to the window.

  • Compressing a large PDF document using command line or Java code without GUI operations

    hi,
    I have a programatically generated very large PDF file with lots of tables and cells in it. The size of the file is few MBs. Using Adobe pro, I am able to reduce the size of the PDF in KBs. I want to achive it either through a command line or using Java API without GUI interaction.
    I am using JDK1.6.
    Thanks.

    I think you need the scripting or SDK forums http://forums.adobe.com/community/acrobat
    As far as I know, Acrobat does not have command line operation

  • Running a command line in Java

    Dear all,
    I have a question, I need to run a command line in a Java program. The commands line is the next:
    cas.exe -i file1
    I have been seeing in internet and I have tried:
    Process ls_proc = Runtime.getRuntime().exec("cmd /c start D:\\cas>cas.exe -i file1");
    it start the window where the cas folder is... but it dont run the commands line : cass.exe -i file1 :(
    Somebody can help me, please??
    Andrea

    try running it like this.
    Process ls_proc = Runtime.getRuntime().exec("cmd /c start D:\\cas>cas.exe -i file1" +"\n");
    if that does not work put this underneath the original.
    ls_proc.newLine();
    or look into the ProcessBuilder class in java.lang.

  • How to "Reload Domain" via Java / Command line

    Hi,
    I am looking for a way to do the same as the button "Reload Domain" in enterprise manager does, but I need to do it from command line or from java.
    We have multiple CMSDK nodes running on different servers. As the ifsctl command runs into very long timeouts if any of the servers is unavailable, we implemented a small java service that's deactivating all nodes in the node configuration table if the servers becomes unavailable. We need this as we have only a very tight timeframe for failover scenarios, so we cannot accept that the ifsctl takes a long time during startup.
    The problem we now have is that the Domain Controller remembers the configuration as it was during startup. So if any Node was disabled and is started later, the node guardian is not contacted by the domain controller. If the "Reload Domain" button is pressed, the domain controller refreshes it configuration and the additional nodes start their services.
    The whole stuff runs within Veritas Cluster, so we need to find a way to get everything up without manual intervention (pressing the button in enterprise manager).
    Thanks for any advice / help
    Alex

    Assuming your are using Ant underneath the covers to build inside of NetBeans (often the case), you can go to the directory where your NetBeans project resides and run "ant" from the command-line for the project's root directory (there should be a build.xml file in that directory). To do this, you'll need to have Ant installed (including having ANT_HOME defined in your environment) and you'll need to have JAVA_HOME defined in your environment and pointing to your Java SDK directory. This may sound like a lot of work (downloading and installing Ant and setting the environment variables), but it is probably the easiest way to build your NetBeans project from the command-line because it is likely that your particular NetBeans project is already using Ant to build. In fact, instead of downloading Ant, you could use the NetBeans installation of Ant as long as your ANT_HOME points to the NetBeans-provided Ant directory. You'll probably want to add $ANT_HOME/bin or %ANT_HOME%\bin to your PATH as well so that that can run "ant" from any directory.

  • Execute command line from Java

    I have an easy one for you!
    I would like to know how I can execute a command line from my java code.
    The only thing I want to do is to launch a html page with the default browser in my computer when I press one button of my java application but I dont know wich class I should use to do it. My application will already know what is the file name.
    Thank for your help
    Eric

    Javaworld has some source code that does this:
    http://www.javaworld.com/javaworld/javatips/jw-javatip66.html

  • Where is the documentation on the Java command line options.

    I know you can get them by running java.exe, but does Sun have a web page with a little more detail?

    Googling for
    java command line options site:java.sun.com
    Found this for 1.4. I imagine you should be able to find something similar for 5.0.
    http://java.sun.com/j2se/1.4.2/docs/tooldocs/windows/java.html

  • How to create and use library JAR files with command-line tools?

    Development Tools -> General Questions:
    I am trying to figure out how to put utility classes into JAR files and then compile and run applications against those JAR files using the command-line javac, jar, and java tools. I am using jdk1.7.0_17 on Debian GNU/Linux 6.0.7.
    I have posted a simple example with one utility class, one console application class, and a Makefile:
    http://holgerdanske.com/users/dpchrist/java/examples/jar-20130520-2134.tar.gz
    Here is a console session:
    2013-05-20 21:39:01 dpchrist@desktop ~/sandbox/java/jar
    $ cat src/com/example/util/Hello.java
    package com.example.util;
    public class Hello {
        public static void hello(String arg) {
         System.out.println("hello, " + arg);
    2013-05-20 21:39:12 dpchrist@desktop ~/sandbox/java/jar
    $ cat src/com/example/hello/HelloConsole.java
    package com.example.hello;
    import static com.example.util.Hello.hello;
    public class HelloConsole {
        public static void main(String [] args) {
         hello("world!");
    2013-05-20 21:39:21 dpchrist@desktop ~/sandbox/java/jar
    $ make
    rm -f hello
    find . -name '*.class' -delete
    javac src/com/example/util/Hello.java
    javac -cp src src/com/example/hello/HelloConsole.java
    echo "java -cp src com.example.hello.HelloConsole" > hello
    chmod +x hello
    2013-05-20 21:39:28 dpchrist@desktop ~/sandbox/java/jar
    $ ./hello
    hello, world!I believe I am looking for:
    1. Command-line invocation of "jar" to put the utility class bytecode file (Hello.class) into a JAR?
    2. Command-line invocation of "javac" to compile the application (HelloConsole.java) against the JAR file?
    3. Command-line invocation of "java" to run the application (HelloConsole.class) against the JAR file?
    I already know how t compile the utility class file.
    Any suggestions?
    TIA,
    David

    I finally figured it out:
    1. All name spaces must match -- identifiers, packages, file system, JAR contents, etc..
    2. Tools must be invoked from specific working directories with specific option arguments, all according to the project name space.
    My key discovery was that if the code says
    import com.example.util.Hello;then the JAR must contain
    com/example/util/Hello.classand I must invoke the compiler and interpreter with an -classpath argument that is the full path to the JAR file
    -classpath ext/com/example/util.jarThe code is here:
    http://holgerdanske.com/users/dpchrist/java/examples/jar-20130525-1301.tar.gz
    Here is a console session that demonstrates building and running the code two ways:
    1. Compiling the utility class into bytecode, compiling the application class against the utility bytecode, and running the application bytecode against the utility bytecode.
    2. Putting the (previously compiled) utility bytecode into a JAR and running the application bytecode against the JAR. (Note that recompiling the application against the JAR was unnecessary.)
    (If you don't know Make, understand that the working directory is reset to the initial working directory prior to each and every command issued by Make):
    2013-05-25 14:02:47 dpchrist@desktop ~/sandbox/java/jar
    $ cat apps/com/example/hello/Console.java
    package com.example.hello;
    import com.example.util.Hello;
    public class Console {
        public static void main(String [] args) {
         Hello.hello("world!");
    2013-05-25 14:02:55 dpchrist@desktop ~/sandbox/java/jar
    $ cat libs/com/example/util/Hello.java
    package com.example.util;
    public class Hello {
        public static void hello(String arg) {
         System.out.println("hello, " + arg);
    2013-05-25 14:03:03 dpchrist@desktop ~/sandbox/java/jar
    $ make
    rm -rf bin ext obj
    mkdir obj
    cd libs; javac -d ../obj com/example/util/Hello.java
    mkdir bin
    cd apps; javac -d ../bin -cp ../obj com/example/hello/Console.java
    cd bin; java -cp .:../obj com.example.hello.Console
    hello, world!
    mkdir -p ext/com/example
    cd obj; jar cvf ../ext/com/example/util.jar com/example/util/Hello.class
    added manifest
    adding: com/example/util/Hello.class(in = 566) (out= 357)(deflated 36%)
    cd bin; java -cp .:../ext/com/example/util.jar com.example.hello.Console
    hello, world!
    2013-05-25 14:03:11 dpchrist@desktop ~/sandbox/java/jar
    $ tree -I CVS .
    |-- Makefile
    |-- apps
    |   `-- com
    |       `-- example
    |           `-- hello
    |               `-- Console.java
    |-- bin
    |   `-- com
    |       `-- example
    |           `-- hello
    |               `-- Console.class
    |-- ext
    |   `-- com
    |       `-- example
    |           `-- util.jar
    |-- libs
    |   `-- com
    |       `-- example
    |           `-- util
    |               `-- Hello.java
    `-- obj
        `-- com
            `-- example
                `-- util
                    `-- Hello.class
    19 directories, 6 filesHTH,
    David

Maybe you are looking for