首页 > 用IntellijIDEA build tomcat8.0.30老提示找不到Package 找不到symbol

用IntellijIDEA build tomcat8.0.30老提示找不到Package 找不到symbol

这个是我的pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">


    <modelVersion>4.0.0</modelVersion>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>Tomcat8.0</artifactId>
    <name>Tomcat8.0</name>
    <version>8.0</version>

    <build>
        <finalName>Tomcat8.0</finalName>
        <sourceDirectory>java</sourceDirectory>
        <testSourceDirectory>test</testSourceDirectory>
        <resources>
            <resource>
                <directory>java</directory>
            </resource>
        </resources>
        <testResources>
            <testResource>
                <directory>test</directory>
            </testResource>
        </testResources>
        <plugins>
            <plugin>
                    <groupId>org.apache.maven</groupId>
                    <artifactId>maven-plugin-api</artifactId>
                    <version>3.3.9</version>
            </plugin>
        </plugins>
    </build>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.4</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.ant</groupId>
            <artifactId>ant</artifactId>
            <version>1.9.6</version>
        </dependency>
        <dependency>
            <groupId>wsdl4j</groupId>
            <artifactId>wsdl4j</artifactId>
            <version>1.6.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.axis</groupId>
            <artifactId>axis-jaxrpc</artifactId>
            <version>1.4</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.jdt.core.compiler</groupId>
            <artifactId>ecj</artifactId>
            <version>4.4.2</version>
        </dependency>

    </dependencies>

    <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>

</project>

目录结构是这样的
依赖包也都有啊。。为什么会有cannot find symbol 的提示

这个是Maven3.3.9点击install提示的错误

[ERROR] /E:/tomcat8-study/apache-tomcat-8.0.30-src/test/org/apache/catalina/startup/LoggingBaseTest.java:[33,17] cannot find symbol
  symbol:   class Rule
  location: package org.junit
[ERROR] /E:/tomcat8-study/apache-tomcat-8.0.30-src/test/org/apache/catalina/startup/LoggingBaseTest.java:[34,23] package org.junit.rules does not exist
[ERROR] /E:/tomcat8-study/apache-tomcat-8.0.30-src/test/org/apache/catalina/startup/LoggingBaseTest.java:[65,18] cannot find symbol
  symbol:   class TestName
  location: class org.apache.catalina.startup.LoggingBaseTest
[ERROR] /E:/tomcat8-study/apache-tomcat-8.0.30-src/test/org/apache/jasper/servlet/TestTldScanner.java:[35,20] package org.easymock does not exist
[ERROR] /E:/tomcat8-study/apache-tomcat-8.0.30-src/test/org/apache/catalina/realm/TestJNDIRealm.java:[41,20] package org.easymock does not exist
[ERROR] /E:/tomcat8-study/apache-tomcat-8.0.30-src/test/org/apache/catalina/filters/TestRestCsrfPreventionFilter.java:[34,20] package org.easymock does not exist
[ERROR] /E:/tomcat8-study/apache-tomcat-8.0.30-src/test/org/apache/catalina/startup/TestWebappServiceLoader.java:[36,20] package org.easymock does not exist
[ERROR] /E:/tomcat8-study/apache-tomcat-8.0.30-src/test/org/apache/catalina/startup/TestWebappServiceLoader.java:[37,20] package org.easymock does not exist
[ERROR] /E:/tomcat8-study/apache-tomcat-8.0.30-src/test/org/apache/catalina/startup/TestWebappServiceLoader.java:[42,13] cannot find symbol
  symbol:   class IMocksControl
  location: class org.apache.catalina.startup.TestWebappServiceLoader
[ERROR] /E:/tomcat8-study/apache-tomcat-8.0.30-src/test/org/apache/catalina/startup/LoggingBaseTest.java:[64,6] cannot find symbol
  symbol:   class Rule
  location: class org.apache.catalina.startup.LoggingBaseTest
[ERROR] /E:/tomcat8-study/apache-tomcat-8.0.30-src/test/org/apache/catalina/startup/LoggingBaseTest.java:[65,42] cannot find symbol
  symbol:   class TestName
  location: class org.apache.catalina.startup.LoggingBaseTest

我点 run的时候

Package does not exist!! 求大神帮助, 我弄了一个晚上眼睛都要瞎了。。


排查方法:

  1. 使用Maven Projects里的maven命令直接执行compile,是否能成功?能成功,则是IDEA环境问题,继续

  2. 确认在External Libraris里有没有你引入的jar包

  3. 如果没有,在pom.xml上右击,maven里有个reimport,重新引入下。如果还没有,确认你使用的仓库里有没有这个jar,或者网络问题

  4. 如果有了,ctrl-alt-shift-s,打开项目面板,在modules下面,看你相应的module的dependencies里是否有你需要的jar?理论上应该是maven自动引入的。如果没有就手动引入一下。

【热门文章】
【热门文章】