2011-09-01 104 views
0

我正在嘗試爲其中一箇舊項目創建一個maven構建。由於其中一個要求仍然與傳統的ant構建腳本兼容,所以我無法更改項目目錄結構。資源目錄可以作爲maven源代碼的子目錄嗎?

問題是當前目錄結構如下:

+ src 
    + java 
    + com 
     + whatever 
     + whatever2 
      + resources (!) 

我的目標是有源目錄src/java和資源目錄src/java/com/whatever/whatever2/resources

顯然我需要設置<sourceDirectory>src/java</sourceDirectory>。這可以。

但我還需要使resources maven資源目錄。嘗試以下操作:

<resources> 
     <resource> 
      <directory>src/java/com/whatever/whatever2/resources</directory> 
     </resource> 
    </resources> 

但是,一旦我做到這一點,運行mvn clean package它給了我:

[INFO] No sources to compile 

一旦我刪除了<resources>部分的模塊編譯得很好,裏面有所有的類。有關如何解決此問題的任何提示?由於

回答

3

我們有一個類似的設置(XMBean描述旁邊使用它們在MBean實現),但是從資源排除java文件:

<resource> 
    <directory>src/main/java</directory> 
    <excludes> 
    <exclude>**/*.java</exclude> 
    </excludes> 
</resource> 
+0

它的伎倆。你能解釋一下爲什麼它有效嗎? :) –

+0

@Jan我不完全確定,但我猜Maven保留已處理文件的列表,並且由於.java文件在未排除時已經被資源插件處理,編譯器插件可能會忽略它們。 – Thomas