簡體   English   中英

Maven pom.xml添加另一個項目

[英]Maven pom.xml adding another project

我有我的Maven Web項目,我想將我的ejb項目(相同的workapce)添加為一個庫。 如何在pom.xml中制作它? 我是否以正確的方式思考? 在此處輸入圖片說明

假設MyEjbProject不是您擁有的另一個Maven項目或不是要使用Maven構建的Maven項目,則可以使用系統依賴項來鏈接到該項目的現有jar文件,如下所示

<project>
   ...
   <dependencies>
      <dependency>
         <groupId>yourgroup</groupId>
         <artifactId>myejbproject</artifactId>
         <version>2.0</version>
         <scope>system</scope>
         <systemPath>path/to/myejbproject.jar</systemPath>
      </dependency>
   </dependencies>
   ...
</project>

也就是說,將軟件包安裝到存儲庫中通常是更好(更可取的方式),方法是使其成為Maven項目並進行構建或以您似乎已經在執行的方式安裝。

編輯:但是,如果它們彼此依賴,則可以始終創建一個單獨的父項目(必須是“ pom”項目),並將其他兩個項目聲明為其“模塊”。 (子項目不必將第三個項目聲明為其父項目)。 結果,您將為新的父項目獲得一個新目錄,您很可能還會在其中放入兩個獨立的項目,如下所示:

parent
|- pom.xml
|- MyEJBProject
|   `- pom.xml
`- MyWarProject
    `- pom.xml

父項目將獲得一個“模塊”部分來命名所有子模塊。 然后,聚合器將使用子模塊中的依賴項來實際找出項目的構建順序)

<project>
   ...
   <artifactId>myparentproject</artifactId>
   <groupId>...</groupId>
   <version>...</version>

   <packaging>pom</packaging>
   ...
   <modules>
     <module>MyEJBModule</module>
     <module>MyWarModule</module>
   </modules>
   ...
</project>

這樣,項目可以相互關聯,但是(一旦將它們安裝在本地存儲庫中)仍然可以單獨用作其他項目中的工件

最后,如果您的項目不在相關目錄中,則可以嘗試將它們作為相對模塊:

filesystem
 |- mywarproject
 |   `pom.xml
 |- myejbproject
 |   `pom.xml
 `- parent
     `pom.xml

現在您可以執行此操作(在Maven 2中工作,只需嘗試一下):

<!--parent-->
<project>
  <modules>
    <module>../mywarproject</module>
    <module>../myejbproject</module>
  </modules>
</project>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM