0
File f = new File(basedir, "../src/main");
我在Jenkins的一個maven版本中有這個。它被用來生成文件。它在我的本地機器(windows 7)上構建時工作,但在Linux上運行時無法工作。它看起來像是將..作爲文本文件夾路徑,而不是返回目錄。錯誤是:dot dot(..)pathing does not work on java new file with linux running jenkins
Embedded error: /path/to/Jenkins/project/target/../src/main/xsd/common.xsd (No such file or directory)
如果'basedir'是'File'對象,你可以嘗試'basedir.getParent()'和相對路徑沒有點。 –
一般而言,您不應該將文件生成到您的'src'樹中。最好保持源代碼控制的原始狀態。大多數現代Maven插件會自動生成文件到'target/generated-sources/...'目錄,並將它們添加到構建所需的java源代碼或資源列表中。 –