This is annoying.
I have a directory structure like this
-lib
--some jar files
-packageName
--Main.java
--SomeOtherPackage
--SomeOtherJavaClass.java
Main.java imports SomeOtherPackage
. And both java files uses jars in the lib.
What I do is add the jar files independently in the CLASSPATH. And then run as: javac packageName/Main.java
but it gives the error that Package not found SomeOtherPackage
. Shouldn't it automatically realize the dependency and build SomeOtherPackage
as well? What would be the javac command and the classpath for the above case?
Thanks
The normal practice is to add the package root to the classpath.
When you're already in the package root, use
-cp .
. E.g.If you want to include JAR files as well, use the
;
(or in *nix, the:
) as classpath path separator:To save the time in repeating all the typing of shell commands, use a
.bat
(or in *nix a.sh
) file. Or just an IDE if you're already familiar with java/javac and so on.You need to add packageName to the CLASSPATH so it can find SomeOtherPackage