2012-03-15 53 views
0

我有一個多模塊項目,我堅持這個奇怪的情況:行家包不編譯

命令> MVN包

[INFO] Scanning for projects... 
[INFO]                   
[INFO] ------------------------------------------------------------------------ 
[INFO] Building mysoft-service-api 3.4-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- maven-resources-plugin:2.5:resources (default-resources) @ mysoft-service-api --- 
[debug] execute contextualize 
[INFO] Using 'UTF-8' encoding to copy filtered resources. 
[INFO] skip non existing resourceDirectory C:\dev\mysoft\service\api\src\main\resources 
[INFO] 
[INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ mysoft-service-api --- 
[INFO] Compiling 150 source files to C:\dev\mysoft\service\api\target\classes 
[INFO] 
[INFO] --- maven-resources-plugin:2.5:testResources (default-testResources) @ mysoft-service-api --- 
[debug] execute contextualize 
[INFO] Using 'UTF-8' encoding to copy filtered resources. 
[INFO] skip non existing resourceDirectory C:\dev\mysoft\service\api\src\test\resources 
[INFO] 
[INFO] --- maven-compiler-plugin:2.3.2:testCompile (default-testCompile) @ mysoft-service-api --- 
[INFO] Not compiling test sources 
[INFO] 
[INFO] --- maven-surefire-plugin:2.5:test (default-test) @ mysoft-service-api --- 
[INFO] Tests are skipped. 
[INFO] 
[INFO] --- maven-jar-plugin:2.3.2:jar (default-jar) @ mysoft-service-api --- 
[INFO] Building jar: C:\dev\mysoft\service\api\target\mysoft-service-api-3.4-SNAPSHOT.jar 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD SUCCESS 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 4.524s 
[INFO] Finished at: Thu Mar 15 19:54:12 EET 2012 
[INFO] Final Memory: 21M/225M 
[INFO] ------------------------------------------------------------------------ 

在此之後,目標/ classes文件夾爲空。當這些課程被發現並報告建造成功時,怎麼會這樣呢?

罐子也建造,但顯然沒有它的類。

該模塊的POM:

http://maven.apache.org/xsd/maven-4.0.0.xsd 「 的xmlns =」 http://maven.apache.org/POM/4.0 0.0" 的xmlns:的xsi = 「http://www.w3.org/2001/XMLSchema-instance」> 4.0.0

<parent> 
    <artifactId>mysoft-service</artifactId> 
    <groupId>mysoft.service</groupId> 
    <version>3.4-SNAPSHOT</version> 
</parent> 

<groupId>mysoft.service.api</groupId> 
<artifactId>mysoft-service-api</artifactId> 
<name>mysoft-service-api</name> 
<version>3.4-SNAPSHOT</version> 
<packaging>jar</packaging> 

<dependencies> 
</dependencies> 

<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
</properties> 

使用maven 3.0.4 任何暗示。將不勝感激(一直在嘗試各種各樣的天數)。

整個軟件編譯運行良好intellij思想。

是的,我沒有運行mvn乾淨,並做了一個新鮮結帳。事實上,我甚至使用新鮮的Windows安裝與一切新鮮(沒有本地mvn回購殘羹剩飯)是肯定的,並可以重現該問題。從想法和命令行運行mvn。

+0

您的pom文件中有標記嗎? – 2012-03-15 18:13:04

回答

0

我們從未想出究竟是什麼問題。但是在一些pom重構之後,問題就消失了。所以我現在「關閉」了。

+0

你可以發佈工作pom,以便我們可以比較嗎? – KingAndrew 2013-11-19 12:15:32

0

你尋找到正確的文件夾:C:\ dev的\ mysoft \服務\ API \目標\類Furhtermore你試圖做的事:

mvn clean package 

代替。

0

即使這個問題已經得到了一個公認的答案,是很老了,我想給爲我工作,因爲我已經遇到了同樣的問題,對於OP和未來可能的讀者的解決方案。

以我爲例,我是建設一個註解處理器項目,構建並沒有表現出任何錯誤,但不會產生任何類文件。在我的src/main/resources文件夾中,我有一個META-INF/services/javax.annotation.processing.Processor文件,它帶有註釋處理器類的定義。我發現這是造成這個問題的原因。爲了解決這個問題,我不得不這樣的配置添加到我的pom.xml:

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>3.5.1</version> 
      <configuration> 
       <compilerArgument> 
        -proc:none 
       </compilerArgument> 
       <source>1.7</source> 
       <target>1.7</target> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 

編譯器參數-proc:沒有人會直接傳遞給javac的,禁用註釋處理該項目生成和編譯類。

我不知道這是否是解決你的具體情況,但我希望這可以幫助別人的未來。