Dante_7
本帖最后由 凋灵兔子 于 2019-5-2 17:43 编辑

问题已经得到解答, 大家进来了就把锭领了吧....求版主手下留情, 要不我也不能回收....


场景如下: 一个可以独立运行的 jar 包 haha.jar 存放于 /main/sub 中, 也就是说 classpath 为 /main/sub/haha.jar, gradle 项目的工作目录是 /main, 如果使用如下代码执行这个 jar 包, 虽然可以正常执行, 但是执行过程中 jvm 认为的运行目录并不是 jar 所在的 /main/sub, 而是 /main.
  1. project.javaexec {
  2.             classpath 'sub/haha.jar'
  3.             main = 'xxxxxxxxxx'
  4.         }
复制代码
这样执行的结果是如果在程序中使用 new File("folder").mkdirs() 创建的文件夹路径并不是 /main/sub/folder, 而是 /main/folder.

我猜 gradle 肯定有一种方法能使自己项目的目录暂时变化一下. 就像在命令行那样 cd sub 这样的操作. 求各位 dalao 指导一下, 谢谢啦~



gooding300
加一个wokingDir
https://docs.gradle.org/current/ ... JavaExec:workingDir

jigaoli
啦啦啦啦啦啦啦啦绿绿绿绿绿

jigaoli
jigaoli 发表于 2019-5-2 18:44
啦啦啦啦啦啦啦啦绿绿绿绿绿

啦啦啦啦啦啦啦啦绿绿绿绿绿

清华儒墨
进来领锭了

馒头咸菜
jigaoli 发表于 2019-5-2 18:45
啦啦啦啦啦啦啦啦绿绿绿绿绿

啦啦啦啦啦啦

pao_
感谢大大

1042102543
这大概就是传说中的大佬吧

NengLiang
感谢大大