我有一個具有單一依賴項的現有Java項目。我只想創建一個pom.xml文件,以便有人可以提取項目mvn install
或mvn init
或其他任何東西,然後開始工作。我如何在不使用IDE的情況下執行此操作?如何在不使用IDE的情況下將Maven pom.xml添加到現有項目?
我在找的相當於pip freeze
或npm init
,或只是我可以複製並粘貼到一個新的pom.xml
文件。
我試過谷歌搜索,只發現用Maven或使用Eclipse插件啓動新項目的東西。
我有一個具有單一依賴項的現有Java項目。我只想創建一個pom.xml文件,以便有人可以提取項目mvn install
或mvn init
或其他任何東西,然後開始工作。我如何在不使用IDE的情況下執行此操作?如何在不使用IDE的情況下將Maven pom.xml添加到現有項目?
我在找的相當於pip freeze
或npm init
,或只是我可以複製並粘貼到一個新的pom.xml
文件。
我試過谷歌搜索,只發現用Maven或使用Eclipse插件啓動新項目的東西。
按照建議的三個步驟將您的項目轉換爲maven項目。
第1步: 正如nullpointer建議,以下屬性是在你的POM,使其作爲Maven項目強制性的。
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.infy</groupId>
<artifactId>user-identity-rest</artifactId>
<version>1.0.0</version>
</project>
的groupId:這是唯一的標識符組多個功能模塊項目
的artifactId:你的模塊的唯一的模塊識別。
版本:最初我們將從版本1.0.0開始,隨後將升級到1.0.1等等。
您可以根據您的理解和未來參考定製這些東西。
第2步: 現在您需要添加聲明pom.xml中的所有庫,它與您在項目中添加的jar類似。
您可能已經在項目中添加了一個庫(可以說json-simple-1.1.1.jar)。這裏maven不會查找整個庫,而是要求它的依賴。
通過在exact version中搜索庫,可以找到外部庫here的依賴關係。
<dependency>
<groupId>com.googlecode.json-simple</groupId>
<artifactId>json-simple</artifactId>
<version>1.1.1</version>
</dependency>
現在你需要從given site複製的依賴,並粘貼到你的pom.xml文件<dependencies>
元素中。在這個例子中,完整的pom。xml是:
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.infy</groupId>
<artifactId>user-identity-rest</artifactId>
<version>1.0.0</version>
<dependencies>
<dependency>
<groupId>com.googlecode.json-simple</groupId>
<artifactId>json-simple</artifactId>
<version>1.1.1</version>
</dependency>
</dependencies>
</project>
Maven將自動從其存儲庫中獲取它。
第3步: 第三次和最後一步是建立您的項目。打開命令提示符/終端,並轉到你的pom.xml聲明的目錄,然後鍵入MVN全新安裝
這將產生對當地和voilla爲您的項目的可執行文件!你已經轉換並生成項目到Maven項目
參考路徑:C:\ PA \的IntelliJ工作區\ Springboot實踐\目標\彈簧引導例子-1.0-SNAPSHOT.jar
注:評論下面如果你需要更多的澄清。
您似乎正在爲您的項目尋找Minimal POM。這被定義爲 -
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<version>1</version>
</project>
在那裏你可以更換名字更方便您的group
和artifact
。只需小心照顧 -
..如果未指定配置詳細信息,Maven將使用它們的默認值 。
你可以讓Maven的爲您創建pom.xml
和目錄結構auomatically使用這個命令:
$ mvn archetype:generate -DgroupId=com.mkyong -DartifactId=NumberGenerator -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
但只需更換groupId
和artifactId
用自己的價值觀。
然後把你的.java
文件在/src/main/java/com/mkyong
。
然後運行標準命令,如mvn compile
,mvn clean
,mvn package
。
如果我不想使用'/ src/main/java /'項目結構怎麼辦? – theLearner
這是可能的。閱讀有關自定義'
感謝雷夫。其實,我真正想要的是:https://stackoverflow.com/questions/49042329/eclipse-how-to-bypass-using-standard-directory-structures-in-maven – theLearner
我可以避免使用'src/main/java'項目結構嗎? – theLearner