简单地说,我想通过命令行手动编译Java文件,但不想对每个目录都这样做。我尝试编写这个脚本,但似乎不起作用。
CUR=$PWD # save workspace directory to return
for line in `find -type d -name src` # find and loop through src paths
do
eval cd $line # go to src
eval javac *.java
eval jar *.class # I need to have a jar for my project
eval mv ../bin/
cd $CUR
done
最佳答案
我认为您根本不需要在该脚本中使用eval
。
但有一个问题可能是您的源目录并不都称为 src
(或者它们是?)您的目录结构是什么样的?
此外,您的项目可能需要一个 jar,而不是多个 jar,因此该位也不起作用。
您可能应该考虑使用真正的 Java 构建工具,例如 Ant 或 Maven;他们十多年前就解决了这个问题。
关于java - 自动编译 Bash 脚本不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19845949/