2013-10-23 49 views
0

我有一個與bash腳本配對的Java項目,以便在Linux上部署。劇本是很多比這更復雜,但重要的部分是這樣的部分:使用maven更新腳本

directory="/default/install/directory" 
jarName = "myApp-0.0.1.jar" 
command="/usr/bin/java -DARG=$argValue -jar $directory/$jarName" 

當我更新版本0.0.2,我想Maven來自動改變此行我的腳本,簡單地:

jarName = "myApp-0.0.2.jar" 

我敢肯定,這將在某種程度上涉及maven-release-plugin - 可能與sed -i,但我的機器是Windows,以便這些工具不那麼容易獲得的(雖然我用cygwin) - 但我不確定如何。謝謝!

+3

爲什麼不把腳本放到資源中,改變'jarName =「myApp - $ {project.version} .jar」',讓Maven自動過濾文件? – Tome

回答

1

這通常是通過將這些腳本作爲Maven資源來完成的。 使用Maven屬性('jarName =「myApp - $ {project.version} .jar」')而不是硬編碼的值,並且激活對這些資源的過濾將使這一點變得簡單。

如果這些腳本應該以不同於生成的JAR內部的方式打包,程序集插件將能夠完成這項工作。

+0

這是一個資源,我只是過濾設置爲false,因爲我不明白它是什麼,直到我閱讀您的評論。謝謝您的幫助! – durron597

+0

事實上,我更新了答案,指出了更明確的過濾 – Tome