【问题标题】:Struts2 tags can't be found找不到Struts2标签
【发布时间】:2017-08-01 23:18:23
【问题描述】:

我来这里是要问一个其他人已经问过的问题,但我找到的每个答案都不能解决我的问题。

我目前将struts2mavenjetty-maven-plugin 一起使用,但是eclipse 抛出关于我的JSPs 文件的错误,说它找不到/struts-tag.tld 文件。

另外,当我启动 jetty:run 命令时,它会说:

[ERROR] Failed to execute goal org.eclipse.jetty:jetty-maven-plugin:9.3.0.M2:run (default-cli) on project starservice: Execution default-cli of goal org.eclipse.jetty:jetty-maven-plugin:9.3.0.M2:run failed: An API incompatibility was encountered while executing org.eclipse.jetty:jetty-maven-plugin:9.3.0.M2:run: java.lang.NoSuchMethodError: org.apache.logging.log4j.ThreadContext.getThreadContextMap()Lorg/apache/logging/log4j/spi/ReadOnlyThreadContextMap;
[ERROR] -----------------------------------------------------
[ERROR] realm =    plugin>org.eclipse.jetty:jetty-maven-plugin:9.3.0.M2
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] = file:/C:/Users/user/.m2/repository/org/eclipse/jetty/jetty-maven-plugin/9.3.0.M2/jetty-maven-plugin-9.3.0.M2.jar
[ERROR] urls[1] = file:/C:/Users/user/.m2/repository/org/sonatype/sisu/sisu-inject-bean/2.1.1/sisu-inject-bean-2.1.1.jar
[ERROR] urls[2] = file:/C:/Users/user/.m2/repository/org/sonatype/sisu/sisu-guice/2.9.4/sisu-guice-2.9.4-no_aop.jar
[...]
[ERROR] urls[45] = file:/C:/Users/user/.m2/repository/org/apache/taglibs/taglibs-standard-impl/1.2.1/taglibs-standard-impl-1.2.1.jar
[ERROR] urls[46] = file:/C:/Users/user/.m2/repository/javax/transaction/javax.transaction-api/1.2/javax.transaction-api-1.2.jar
[ERROR] Number of foreign imports: 1
[ERROR] import: Entry[import  from realm ClassRealm[maven.api, parent: null]]

还有绒球

<groupId>xx.xx</groupId>
<artifactId>xxxxx</artifactId>

<packaging>war</packaging>
<version>1</version>


<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>3.8.1</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.struts</groupId>
        <artifactId>struts2-core</artifactId>
        <version>2.5.10.1</version>
    </dependency>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>5.2.7.Final</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>2.8</version>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
    </dependency>
</dependencies>

<build>
    <finalName>starserv</finalName>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.6.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>3.0.0</version>
            <configuration>
                <warName>${project.artifactId}</warName>
                <failOnMissingWebXml>false</failOnMissingWebXml>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.eclipse.jetty</groupId>
            <artifactId>jetty-maven-plugin</artifactId>
            <version>9.3.0.M2</version>
            <configuration>
                <scanIntervalSeconds>5</scanIntervalSeconds>
                <war>${project.basedir}/target/${project.artifactId}.war</war>
                <webApp>
                    <webInfIncludeJarPattern>^$</webInfIncludeJarPattern>
                    <containerIncludeJarPattern>^$</containerIncludeJarPattern>
                </webApp>
            </configuration>
        </plugin>
    </plugins>
</build>

有人知道怎么解决吗?因为没有任何效果。

【问题讨论】:

  • 你能把你的问题放在你的pom上吗?
  • java.lang.NoSuchMethodError: org.apache.logging.log4j.ThreadContext.getThreadContextMap()Lorg/apache/logging/log4j/spi/ReadOnlyThreadContextMap;
  • 我已经添加了@asettouf

标签: java eclipse maven struts2 maven-jetty-plugin


【解决方案1】:

我找到了问题。

您只需要将log4j api添加到struts中相同版本的log4j。对我来说是

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-api</artifactId>
    <version>2.8.1</version>
</dependency>

希望对某人有所帮助!

【讨论】:

    猜你喜欢
    • 2015-09-10
    • 2012-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-14
    • 2012-06-25
    相关资源
    最近更新 更多