我有Maven項目,但在其中一臺服務器上,我必須在沒有Maven的情況下構建它。
可以使用標準的JDK命令。我在哪裏可以看到在構建項目時Maven發送給JDK的命令?建設沒有Maven的Maven項目
2
A
回答
1
這是我的解決方案。當然,這是硬編碼,和項目是非常小的,但對我來說是有幫助的
項目結構:
主文件夾
- 依賴(DIR)
- 模塊1 - SRC ...
- 模塊2 - src ...
- manufest.template(文件)
module2依賴於module1,module1與JDK1.5,JDK1.6編譯爲module2。
@echo off
set JODA=dependency\joda-time-1.6.2.jar
set EJB=dependency\ejb-api-3.0.jar
set PERSISTANCE_API=dependency\persistence-api-1.0.jar
set DEPENDENCIES=%EJB%;%JODA%;%PERSISTANCE_API%
set TEMP_FILE=temp
set PUBLIC_INTERFACE_CLASSES=target\target-module1
set CODEGEN_CLASSES=target\target-module2
mkdir target
mkdir %MODULE1_CLASSES%
mkdir %MODULE2_CLASSES%
dir module1\*.java /s /B > %TEMP_FILE%
%JAVA_HOME_1_5%\bin\javac -classpath %DEPENDENCIES%;%MODULE1_CLASSES% -d %MODULE1_CLASSES% @%TEMP_FILE%
dir module2\*.java /s /B > %TEMP_FILE%
%JAVA_HOME_1_6%\bin\javac -classpath %DEPENDENCIES%;%JAVA_HOME_1_6%\lib\tools.jar;%MODULE1_CLASSES%;%MODULE2_CLASSES% -d %MODULE2_CLASSES% @%TEMP_FILE%
jar cf module1.jar -C %MODULE1_CLASSES% .
jar cfm module2.jar manifest.template -C %MODULE2_CLASSES% .
rm %TEMP_FILE%
rm -r target
6
Maven做了很多。沒有簡單的方法來模擬Maven在沒有Maven的情況下做什麼。
如果絕對不能在服務器上安裝maven,請在另一臺服務器(或本地)上構建工件,並通過scp將它們移動到服務器上。
這就是說:我曾經有一個類似的場景,我從Maven生成了一個完全需要運行本地構建但無法運行Maven(禁止網絡訪問)的服務器的RPM。我所做的就是把所有的依賴關係放在RPM中,再加上一個Ant分發和一個Ant構建文件。在RPM安裝腳本中,依賴項被解壓縮並調用Ant腳本。它的工作,但它意味着雙重工作。
0
您可以從這裏下載依賴項:http://jar-download.com/online-maven-download-tool.php。因此你不需要Maven安裝。
+0
請添加一些說明,以防萬一鏈接失效 – prasun
相關問題
- 1. 的Maven - 項目建設
- 2. 設置maven-web項目(從現有的netbeans-maven-web項目)
- 3. 創建項目特定的Maven設置
- 4. 的Maven - 跳過父項目建設
- 5. 使用maven的項目建設
- 6. Eclipse Maven:沒有「從SCM檢出Maven項目」選項
- 7. Android MAVEN從非maven項目創建ApkLib
- 8. Eclipse的Maven項目錯誤創建一個新的Maven項目
- 9. 建設maven項目導致錯誤
- 10. 將現有的非Maven項目添加到Maven項目
- 11. Maven/Jetty到Maven/Tomcat項目
- 12. 創建由Maven項目
- 13. 使用maven構建項目
- 14. 創建一個maven項目
- 15. Maven項目構建問題
- 16. 不能建立Maven項目
- 17. 創建maven項目錯誤
- 18. 與Junit構建Maven項目
- 19. 創建GWT Maven項目
- 20. 無法構建Maven項目
- 21. 構建多個Maven項目
- 22. 轉換現有項目的Maven項目
- 23. 設置一個沒有maven的JSF項目
- 24. Maven:如何創建沒有傳播代價的項目?
- 25. Maven項目URL
- 26. 在Maven項目
- 27. 在Maven項目
- 28. Maven Run項目
- 29. Maven項目
- 30. Spring Maven項目
爲什麼你需要在沒有Maven的情況下構建? – khmarbaise
沒有Maven在這個環境下,我無法安裝它 – Ilya
然後構建軟件?聽起來很奇怪。更改爲您可以創建EAR等環境並僅傳輸EAR而不是源代碼......無論如何都是更好的.. – khmarbaise