问题与Maven编译有关。

huangapple 未分类评论43阅读模式
英文:

Issue with maven compile

问题

在尝试在Jenkins中构建一个使用Selenium WebDriver和TestNG的E2E项目时,我遇到了以下错误:

[ERROR] COMPILATION ERROR : 
[INFO] -------------------------------------------------------------
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[9,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[10,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[11,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[12,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[13,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[14,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[15,22] package org.testng.xml does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[21,42] cannot find symbol
  symbol: class IReporter
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[24,37] cannot find symbol
  symbol:   class XmlSuite
  location: class resources.ExtentReporterNG
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[24,63] cannot find symbol
  symbol:   class ISuite
  location: class resources.ExtentReporterNG
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[43,33] cannot find symbol
  symbol:   class IResultMap
  location: class resources.ExtentReporterNG
[INFO] 11 errors 
...

在之前运行mvn compile命令时没有出现这个问题,但在更新了我的POM并重新编译后,在终端中也开始显示这个错误。当从Eclipse中的testng.xml运行项目时,项目正常运行。

以下是我的POM文件的内容:

<url>http://maven.apache.org</url>
  
<build>
   <resources>
        <resource>
            <directory>src/main/java/resources</directory>
            <filtering>true</filtering> 
        </resource>
    </resources>
  <plugins>
   
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>3.0.0-M4</version>
        <configuration>
          <suiteXmlFiles>
            <suiteXmlFile>testng.xml</suiteXmlFile>
          </suiteXmlFiles>
        </configuration>
      </plugin>
  
  	  <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.8.1</version>
          <configuration>
             <source>1.8</source>
             <target>1.8</target>
          </configuration>
       </plugin>
</plugins>
  
</build>
<dependencies>
    
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    
    <dependency>
      <groupId>com.apple</groupId>
      <artifactId>AppleJavaExtensions</artifactId>
      <version>1.4</version>
    </dependency>

       <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>3.4.0</version>
    </dependency>  
    <!-- 其他依赖项 -->
</dependencies>
</project>

附上项目的截图:

项目截图

英文:

When trying to build in jenkins an E2E project using selenium wd and testng , I got the following error:

[ERROR] COMPILATION ERROR : 
[INFO] -------------------------------------------------------------
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[9,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[10,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[11,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[12,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[13,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[14,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[15,22] package org.testng.xml does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[21,42] cannot find symbol
  symbol: class IReporter
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[24,37] cannot find symbol
  symbol:   class XmlSuite
  location: class resources.ExtentReporterNG
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[24,63] cannot find symbol
  symbol:   class ISuite
  location: class resources.ExtentReporterNG
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[43,33] cannot find symbol
  symbol:   class IResultMap
  location: class resources.ExtentReporterNG
[INFO] 11 errors 
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  4.605 s
[INFO] Finished at: 2020-04-03T19:51:37-03:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.5.1:compile (default-compile) on project E2EProject: Compilation failure: Compilation failure: 
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[9,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[10,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[11,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[12,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[13,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[14,18] package org.testng does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[15,22] package org.testng.xml does not exist
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[21,42] cannot find symbol
[ERROR]   symbol: class IReporter
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[24,37] cannot find symbol
[ERROR]   symbol:   class XmlSuite
[ERROR]   location: class resources.ExtentReporterNG
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[24,63] cannot find symbol
[ERROR]   symbol:   class ISuite
[ERROR]   location: class resources.ExtentReporterNG
[ERROR] /Users/VickoS/.jenkins/E2EProject/src/main/java/resources/ExtentReporterNG.java:[43,33] cannot find symbol
[ERROR]   symbol:   class IResultMap
[ERROR]   location: class resources.ExtentReporterNG
[ERROR] -&gt; [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

This was not happening when running the mvn compile command before, but after updating my POM and re-compiling, it started to show in the terminal too. The project works perfectly fine when running it from the testng.xml in eclipse.

Here's how my POM file looks like

 &lt;url&gt;http://maven.apache.org&lt;/url&gt;
  
  

  &lt;build&gt;
   &lt;resources&gt;
        &lt;resource&gt;
            &lt;directory&gt;src/main/java/resources&lt;/directory&gt;
            &lt;filtering&gt;true&lt;/filtering&gt; 
        &lt;/resource&gt;
    &lt;/resources&gt;
  &lt;plugins&gt;
   
      &lt;plugin&gt;
        &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
        &lt;artifactId&gt;maven-surefire-plugin&lt;/artifactId&gt;
        &lt;version&gt;3.0.0-M4&lt;/version&gt;
        &lt;configuration&gt;
          &lt;suiteXmlFiles&gt;
            &lt;suiteXmlFile&gt;testng.xml&lt;/suiteXmlFile&gt;
          &lt;/suiteXmlFiles&gt;
        &lt;/configuration&gt;
      &lt;/plugin&gt;
  
  	  &lt;plugin&gt;
        &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
        &lt;artifactId&gt;maven-compiler-plugin&lt;/artifactId&gt;
        &lt;version&gt;3.8.1&lt;/version&gt;
          &lt;configuration&gt;
             &lt;source&gt;1.8&lt;/source&gt;
             &lt;target&gt;1.8&lt;/target&gt;
          &lt;/configuration&gt;
       &lt;/plugin&gt;
&lt;/plugins&gt;
  
  
  &lt;/build&gt;
  &lt;dependencies&gt;
    
    &lt;dependency&gt;
      &lt;groupId&gt;junit&lt;/groupId&gt;
      &lt;artifactId&gt;junit&lt;/artifactId&gt;
      &lt;version&gt;3.8.1&lt;/version&gt;
      &lt;scope&gt;test&lt;/scope&gt;
    &lt;/dependency&gt;
    
    &lt;dependency&gt;
      &lt;groupId&gt;com.apple&lt;/groupId&gt;
      &lt;artifactId&gt;AppleJavaExtensions&lt;/artifactId&gt;
      &lt;version&gt;1.4&lt;/version&gt;
    &lt;/dependency&gt;

       &lt;dependency&gt;
        &lt;groupId&gt;org.seleniumhq.selenium&lt;/groupId&gt;
        &lt;artifactId&gt;selenium-java&lt;/artifactId&gt;
        &lt;version&gt;3.4.0&lt;/version&gt;
    &lt;/dependency&gt;  
    
    &lt;dependency&gt;
  &lt;groupId&gt;org.testng&lt;/groupId&gt;
  &lt;artifactId&gt;testng&lt;/artifactId&gt;
  &lt;version&gt;7.1.0&lt;/version&gt;
  &lt;scope&gt;test&lt;/scope&gt;
&lt;/dependency&gt;
  
  &lt;dependency&gt;
    &lt;groupId&gt;com.aventstack&lt;/groupId&gt;
    &lt;artifactId&gt;extentreports&lt;/artifactId&gt;
    &lt;version&gt;3.0.6&lt;/version&gt;
&lt;/dependency&gt;

 &lt;dependency&gt;
&lt;groupId&gt;com.relevantcodes&lt;/groupId&gt;
&lt;artifactId&gt;extentreports&lt;/artifactId&gt;
&lt;version&gt;2.41.2&lt;/version&gt;
&lt;/dependency&gt;
      
      &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-api&lt;/artifactId&gt;
    &lt;version&gt;2.8.2&lt;/version&gt;
  &lt;/dependency&gt;
  
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-core&lt;/artifactId&gt;
    &lt;version&gt;2.8.2&lt;/version&gt;
  &lt;/dependency&gt;
  
  &lt;/dependencies&gt;
&lt;/project&gt;

Attaching image of how the project looks like:

Project

答案1

得分: 0

我最终通过更新我的 POM 文件来解决了这个问题,做了以下操作:

移除了包含 avenstack groupID 的 extent report 依赖项:

<dependency>
    <groupId>com.aventstack</groupId>
    <artifactId>extentreports</artifactId>
    <version>3.0.6</version>
</dependency>

将其他 Extent Report 更新到以下版本:

<dependency>
    <groupId>com.aventstack</groupId>
    <artifactId>extentreports</artifactId>
    <version>3.1.5</version>
</dependency>

同时,添加了以下依赖项:

<dependency>
    <groupId>org.freemarker</groupId>
    <artifactId>freemarker</artifactId>
    <version>2.3.28</version>
</dependency>
英文:

I was finally able to solve this by updating my POM file doing the following:
Removing the extent report dependency that had the avenstack groupID

&lt;dependency&gt;
    &lt;groupId&gt;com.aventstack&lt;/groupId&gt;
    &lt;artifactId&gt;extentreports&lt;/artifactId&gt;
    &lt;version&gt;3.0.6&lt;/version&gt;
&lt;/dependency&gt;

updating the other Extent Report to this v:

&lt;dependency&gt;
     &lt;groupId&gt;com.aventstack&lt;/groupId&gt;
     &lt;artifactId&gt;extentreports&lt;/artifactId&gt;
     &lt;version&gt;3.1.5&lt;/version&gt;
  &lt;/dependency&gt;

And adding this one too:

&lt;dependency&gt;
        &lt;groupId&gt;org.freemarker&lt;/groupId&gt;
        &lt;artifactId&gt;freemarker&lt;/artifactId&gt;
        &lt;version&gt;2.3.28&lt;/version&gt;
    &lt;/dependency&gt;

huangapple
  • 本文由 发表于 2020年4月4日 08:12:32
  • 转载请务必保留本文链接:https://java.coder-hub.com/61022215.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定