我想要制作一个工具,可以生成和编译java源代码,并从它生成一个jar文件:
为此,我使用了JavaCompiler:
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();当我将类路径添加到Java SystemCompiler时:
optionList.addAll(Arrays.asList("-cp", classpath));当我将类路径设置为";“作为分隔符时,它适用于Windows:
classpath = "jar1.jar;jar2.jar;dir/jar3.jar;dir/jar4.jar";在Linux中,它失败了。
当我用空间代替;例如:
classpath = "jar1.jar jar2.jar lib/jar3.jar lib/jar4.jar";这两种系统都失败了。
同样的情况也适用于:
classpath = "lib/*"我需要一个能够独立生成一个工作类路径系统的解决方案。
更新(解决方案):
好的,我发现有java的报价
File.pathseparator 与系统环境相对应的更改。
https://stackoverflow.com/questions/33368398
复制相似问题