我还没能找到一个好的答案,但是当使用javac时,我发现对于类路径我似乎无法使用当前工作的相对路径来使用它目录,虽然它似乎适用于目标目录和源文件位置。以下是我们目前正在使用的内容:
javac java/src/com/<our-company>/ecommerce/<vendor-tool>/executor/*.java java/src/com/<our-company>/ecommerce/<vendor-tool>/util/*.java -d ./target/java/bin -cp /c/Git/<our-api>/java/lib/some.jar:/c/Git/<our-api>/java/lib/another.jar -verbose
我们想使用这样的东西:
javac java/src/com/<our-company>/ecommerce/<vendor-tool>/executor/*.java java/src/com/<our-company>/ecommerce/<vendor-tool>/util/*.java -d ./target/java/bin -cp java/lib/some.jar:java/lib/another.jar -verbose
或者也许:
javac java/src/com/<our-company>/ecommerce/<vendor-tool>/executor/*.java java/src/com/<our-company>/ecommerce/<vendor-tool>/util/*.java -d ./target/java/bin -cp ./java/lib/some.jar:./java/lib/another.jar -verbose
第一个例子似乎有效,但其他两个例子出现错误,无法找到这些jar中的包。由于我们使用的是Git,我更希望整个构建路径相对于允许个人Git仓库位于本地的任何地方 - 以及关于他们可能正在使用哪个操作系统的灵活性(这是正在运行的)在一个shell中,每个平台的操作都应该相同。)