2014-10-30 70 views
0

我在源文件夾src中的項目中包含de.ht.ak.praktikum.hook,但它應該從構建路徑中排除。我用右鍵單擊它並選擇Build Path - > Exclude。由於每次更新項目時我都會將Maven添加到項目中,因此排除的文件夾會再次變成包,即排除將被刪除。我試圖解決這樣說:從POM中的構建路徑中排除軟件包

... 
    <build> 
     <sourceDirectory>src</sourceDirectory> 
     <resources> 
      <resource> 
       <directory>src</directory> 
       <excludes> 
        <exclude>de/ht/ak/praktikum/hook</exclude> 
       </excludes> 
      </resource> 
     </resources> 
    ... 
    </build> 
... 

我想也這樣做所描述there

... 
    <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-eclipse-plugin</artifactId> 
     <version>3.1</version> 
     <configuration> 
      <sourceExcludes> 
       <sourceExclude>de/ht/ak/praktikum/hook/</sourceExclude> 
      </sourceExcludes> 
      <sourceIncludes> 
       <sourceInclude>**/*.java</sourceInclude> 
      </sourceIncludes> 
     </configuration> 
    </plugin> 
... 

但是,沒有這兩種方法幫助。有任何想法嗎?

+0

如果你不想在jar中導出包,那麼只需在包名中添加內部參數,例如:de.ht.ak.praktikum.internal.hook – StackFlowed 2014-10-30 20:08:28

+0

我不使用maven構建項目,而是僅僅爲了管理依賴關係。排除提到的文件夾應該可以隱藏項目錯誤。 – 2014-10-30 20:11:37

回答

1

您的第一次嘗試將不起作用,因爲您指定將其排除爲資源(即,那些打包在您生成的JAR文件中的文件 - 您通常不希望源文件在其中)。

第二次嘗試更多的是在正確的軌道上。但是,您希望將它們排除在編譯之外,因此您需要設置the exclude option of the maven-compiler-plugin。即,像這樣:

<build> 
    .. 
    <plugins> 
    .. 
    <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-compiler-plugin</artifactId> 
     <version>3.2</version> 
     <configuration> 
     <excludes> 
      <exclude>de/ht/ak/praktikum/hook/*.java</exclude> 
     </excludes> 
     </configuration> 
    </plugin> 
    .. 
    </plugins> 
</build> 

當更新在Eclipse項目(Maven的 - >更新項目),Eclipse應當遵守這一配置,也從Eclipse內部構建路徑排除。

+0

我的POM現在看起來像[this](http://pastie.org/9686444),但它沒有幫助 - 文件夾仍然包含在構建路徑中。 – 2014-10-30 21:08:57

+0

爲什麼你忽略了'* .java'通配符模式說明符?此外,有些人會將排在前面的源文件夾報告爲成功,有些人則不會。爲了安全起見,可以嘗試在模式開始處加上'** /'(即'**/de/ht/ak/praktikum/hook/*。java'。 – misberner 2014-10-30 21:24:48

+0

我想排除整個文件夾,但是沒關係,如果我使用通配符模式說明符或者沒有,結果是一樣的 – 2014-10-30 21:26:26

相關問題