使用 shellscript 编译 java 代码,包括几个文件(.jars .class)

Compiling java code with shellscript, including several files(.jars .class)

我有以下代码在 shellscript 中编译 java 程序:

javac workshop/*.java -cp jars/\*  
javac menu/*.java -cp jars/\*  -cp workshop/

此代码应编译工作坊中的所有 java 文件并将所有内容包含在 jars 中,然后它应编译菜单中的所有内容,同时将每个 jar 文件包含在 jars 中以及工作坊中的每个 .class 文件。

但是它不是,因为第二个命令给我错误

menu/PgElementSet_Menu.java:15: error: package workshop does not exist
import workshop.*;

包装工作室在 workspace.MyWorkShop.class(以及其他)。

现在我可能在做一些愚蠢的事情,但我不确定我做错了什么,代码基于执行以下操作的 .bat 文件(并在 windows 机器上工作)

javac -classpath jars\javaview.jar;jars\jvx.jar;. workshop\*.java
javac -classpath jars\javaview.jar;jars\jvx.jar;. menu\*.java
@pause

有什么想法吗?

这对你有用

for i in `ls jars/*.jar`; 
do 
    export CLASSPATH=$CLASSPATH:$i; 
done
export CLASSPATH=.:$CLASSPATH
javac `find * -name *.java`