2012-03-27 18 views
22

,而不是我目前使用POM:安裝文件中使用的命令行

mvn install:install-file -Dfile={path/to/my/legacy.jar} -DgroupId=horrible -DartifactId=legacy.jar -Dversion=1.2.3 -Dpackaging=jar 

進口一些舊的遺留罐子到我的回購協議。這工作得很好,並且是推薦的方法。看起來好像這可以用POM來完成,而不是在我現在使用的命令行+腳本中完成。我認爲這是清潔劑有:

mvn install:install-file 

,讓我的店裏回購的版本細節,而不是存儲在非行家腳本該信息(這是奇怪的行家)。我試圖通過設置標籤公開這些-D設置,但沒有奏效。有沒有其他人試過這個,並得到它的工作?

+0

也許我錯過了點,但是你爲什麼要腳本呢?當然,你只需要將這些傳統罐子導入你的回購商品一次? – artbristol 2012-03-27 15:50:10

+0

只是一個維護事情,如果我們需要再次導出到repo(無論出於何種原因),我們使用相同的groupId /版本號導出。 – reccles 2012-03-27 15:56:05

回答

30

好的,回答我自己的問題:P。你可以通過定義屬性來做到這一點,我原本以爲groupId等自動導出爲屬性,但它們不是。

<?xml version="1.0" encoding="UTF-8"?> 
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.whatever</groupId> 
    <artifactId>Stuff</artifactId> 
    <version>1.2.3</version> 

    <description> 
    Description of why this horrible jar exists. 
    </description> 

    <properties> 
    <groupId>${project.groupId}</groupId> 
    <artifactId>${project.artifactId}</artifactId> 
    <version>${project.version}</version> 
    <packaging>${project.packaging}</packaging> 
    <file>mylegacy.jar</file> 
    </properties> 

    <build> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-install-plugin</artifactId> 
     <executions> 
      <execution> 
      <phase>install</phase> 
      <goals> 
       <goal>install-file</goal> 
      </goals> 
      </execution> 
     </executions> 
     </plugin> 
    </plugins> 
    </build> 

</project> 

現在可以使用安裝文件:

mvn install 

這pom.xml的。我曾與Maven 3而不是2

對於多個文件進行測試,這也看到Maven POM file for installing multiple 3rd party commercial libraries

+1

謝謝你。我正在尋找的是 – mahonya 2013-01-19 15:29:49

+4

我也發現了這個,如果你有多個罐子,這可能會更好:http://stackoverflow.com/questions/10802280/multiple-installinstall-file-in-a-single-pom-xml – mahonya 2013-01-19 16:00:16

+0

up投票的說明:) – Rondo 2013-10-02 00:27:35

相關問題