Code Comments
Programming Forum and web based access to our favorite programming groups.I downloaded a java source of a tool which is spread over multiple (40-50) * .java files which are located in different sub directories according to their package na me. Unfortunately no further instructions (e.g. Ant script) are available. However the source should be compileable without errors. How do I start ? Which class should I compile first ? For example I found a "main()" method in java file SomeGUI.java When I switch now to the base directory of package: D:\java\base\ and type at the command prompt: javac org\somepack1\subpack2\SomeGUI.java then the compiler tell me that he cannot find a file/package "org.somepack.a ddclass" But the java file org\soempack\addclass.java EXISTS ! Why does the compiler not find this class/source ? Can I somehow tell the compiler (from the command line !): "here is the source directory tree. Search for all you need and compile all necessary classes in the sequence you need". Tom
Post Follow-up to this messageTom Parson wrote: > Can I somehow tell the compiler (from the command line !): > > "here is the source directory tree. Search for all you need and compile al l > necessary classes in the sequence you need". I don't think javac can recursively compile packages. But creating a simple Ant build.xml should be that hard: <?xml version="1.0" encoding="UTF-8"?> <project basedir="." default="compile" name="standard"> <target name="compile"> <javac destdir="." srcdir="." /> </target> </project> If you drop that into D:\java\base\ and type ant it will automatically compile all sources. You might want to adjust destdir to create the class files into a different directory. Thomas
Post Follow-up to this messageTom Parson wrote: > I downloaded a java source of a tool which is spread over multiple (40-50) *.java files > which are located in different sub directories according to their package name. > > Unfortunately no further instructions (e.g. Ant script) are available. > However the source should be compileable without errors. > > How do I start ? > > Which class should I compile first ? > > For example I found a "main()" method in java file SomeGUI.java > > When I switch now to the base directory of package: > > D:\java\base\ > > and type at the command prompt: > > javac org\somepack1\subpack2\SomeGUI.java > > then the compiler tell me that he cannot find a file/package "org.somepack .addclass" > But the java file org\soempack\addclass.java EXISTS ! > > Why does the compiler not find this class/source ? > > Can I somehow tell the compiler (from the command line !): > > "here is the source directory tree. Search for all you need and compile al l > necessary classes in the sequence you need". Well, on *nix, find . -name "*.java" will find the files so javac `find . -name "*.java"` will compile all the files simultaneously, or at least compile them all "in the same context", which I think will solve some of the dependancy issues. All this is from guessing - I use Ant!! BugBear
Post Follow-up to this messagebugbear wrote: > Tom Parson wrote: > > Well, on *nix, > find . -name "*.java" > will find the files > so > javac `find . -name "*.java"` > > will compile all the files simultaneously, or at least > compile them all "in the same context", which I think > will solve some of the dependancy issues. > > All this is from guessing - I use Ant!! The find hack will also work on Windows with Cygwin. -- Lew
Post Follow-up to this messageOn 16 Aug 2007 10:20:53 GMT, tom.parson@gm.com (Tom Parson) wrote, quoted or indirectly quoted someone who said : >How do I start ? see http://mindprod.com/jgloss/ant.html -- Roedy Green Canadian Mind Products The Java Glossary http://mindprod.com
Post Follow-up to this messageOn Aug 16, 3:20 am, tom.par...@gm.com (Tom Parson) wrote: > I downloaded a java source of a tool which is spread over multiple (40-50) *.java files > which are located in different sub directories according to their package name. > > Unfortunately no further instructions (e.g. Ant script) are available. > However the source should be compileable without errors. > > How do I start ? > > Which class should I compile first ? > > For example I found a "main()" method in java file SomeGUI.java > > When I switch now to the base directory of package: > > D:\java\base\ > > and type at the command prompt: > > javac org\somepack1\subpack2\SomeGUI.java > > then the compiler tell me that he cannot find a file/package "org.somepack .addclass" > But the java file org\soempack\addclass.java EXISTS ! > > Why does the compiler not find this class/source ? > > Can I somehow tell the compiler (from the command line !): > > "here is the source directory tree. Search for all you need and compile al l > necessary classes in the sequence you need". > > Tom I think the best option would be to write a simple build.xml with a <javac> task to do the job. If non-command line, drop the com tree into a new java project in Eclipse or use the import feature. -cheers, Manish -cheers, Manish
Post Follow-up to this messageHi Tom, Tom Parson wrote: > I downloaded a java source of a tool which is spread over multiple (40-50) > *.java files which are located in different sub directories according to > their package name. > > Unfortunately no further instructions (e.g. Ant script) are available. > However the source should be compileable without errors. I would suggest you'd just write a small ant file yourself which will do the compiling. Still better than messing around with javac and compiling every single class yourself. Best regards, Jan -- ________________________________________ _________________________________ insOMnia - We never sleep... http://www.insOMnia-hq.de
Post Follow-up to this message
Show a Printable Version
Email This Page to Someone!
Receive updates to this thread
Powered by vBulletin
Copyright 2000-2006 Jelsoft Enterprises Limited.