2014-04-16 48 views
0

編輯Maven的不執行生成資源

是產生資源的目標不會被Maven的Unix中執行的問題。 與Maven 2.0.10,我執行該指令:MVN資源:資源

在Windows上:

[INFO] [dependency:unpack {execution: unpack-filters}] 
[INFO] Configured Artifact: com.viaccess.testtools:filters:1.0-SNAPSHOT:jar 
[INFO] filters-1.0-SNAPSHOT.jar already unpacked. 

在Unix上:

[INFO] No goals needed for project - skipping 

奇怪......同樣的行家,相同的conf。

舊帖子

我有我的過濾Maven項目的問題。 它適用於windows,但不適用於unix(redhat)。 雖然,maven版本是一樣的,java版本和maven的settings.xml是一樣的。所以,我不明白問題在哪裏。

maven指令是mvn clean package 在windows上,它運行良好。在Windows上,它失敗,錯誤加載屬性文件'/var/tmp/test/target/filters/empty.properties' 而不是目標目錄創建。

有人可以幫助我嗎?

有關pom文件的更多信息。

關於父POM下面信息:

<properties> 
    <filters.path>${project.build.directory}/filters</filters.path> 
    <filter.default>empty.properties</filter.default> 
</properties> 

<profiles> 
    <profile> 
    <id>default</id> 
    <properties> 
     <filter.defaut>default.properties</filter.defaut> 
    </properties> 
    </profile> 
    <profile> 
    <id>windows</id> 
    <properties> 
      <filter.defaut>default.properties</filter.defaut> 
    </properties> 
    </profile> 
</profiles> 
<build> 
<resources> 
    <resource> 
    <directory>filters</directory> 
     <targetPath>${project.build.directory}/filters</targetPath> 
    </resource> 
    </resources> 
    <plugin> 
    <artifactId>maven-dependency-plugin</artifactId> 
    <executions> 
     <execution> 
     <id>unpack-filters</id> 
     <phase>generate-resources</phase> 
     <goals> 
      <goal>unpack</goal> 
     </goals> 
     <configuration> 
      <artifactItems> 
      <artifactItem> 
       <groupId>com.viaccess.testtools</groupId> 
       <artifactId>filters</artifactId> 
       <version>1.0-SNAPSHOT</version> 
       <includes>*.properties</includes> 
       <outputDirectory>${filters.path}</outputDirectory> 
      </artifactItem> 
      </artifactItems> 
     </configuration> 
     </execution> 
    </executions> 
    </plugin> 

過濾項目就是這樣:

<build> 
<resources> 
    <resource> 
    <directory>src/filters</directory> 
    <targetPath>${project.build.directory}/classes</targetPath> 
    <includes> 
     <include>*.properties</include> 
    </includes> 
    </resource> 
</resources> 
</build> 

和主要項目就是這樣。

<parent> 
    <!-- link to my parent project --> 
</parent> 

    <build> 
    <filters> 
     <filter>${filters.path}/${filter.defaut}</filter> 
    </filters> 

感謝您的幫助。

+0

'filter.defaut'拼寫是intented? – Torsten

+0

@Torsten我不明白你的意思。滿意度是什麼意思?問題是unpack目標是在Unix中啓動nt – elhostis

+0

filter.defaut在配置文件中拼寫錯誤。 (默認缺少'l') – user944849

回答

0

我發現了這個問題。 pom沒有問題,這是一個聯繫問題。 在windows上,我使用了最後一個pom父項,因爲它是我的工作桌面(並且我進行了pom安裝)。 Unix是一個遠程服務器。 pom父母的下載已經完成,所以新版本從未上傳過。

Noob問題,對不起... :)

感謝您的幫助。

埃裏克