错误的Maven异常

时间:2017-02-12 17:20:55

标签: eclipse maven struts2 pom.xml

我正在尝试使用Maven在eclipse中创建一个新项目。 我使用了struts的简单“struts-archetype-blank”模板。 它没有spring依赖项。我仍然错过了春天的神器错误。

有什么方法可以解决这个问题吗?或者我做错了什么?

enter image description here

这是一个信息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>com.krb</groupId>
<artifactId>MySamaj</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>MySamaj</name>

<properties>
    <struts2.version>2.5.5</struts2.version>
    <log4j2.version>1.2.15</log4j2.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<dependencies>

    <dependency>
        <groupId>org.apache.struts</groupId>
        <artifactId>struts2-core</artifactId>
        <version>${struts2.version}</version>
    </dependency>

    <dependency>
        <groupId>org.apache.struts</groupId>
        <artifactId>struts2-config-browser-plugin</artifactId>
        <version>${struts2.version}</version>
    </dependency>

    <dependency>
        <groupId>org.apache.struts</groupId>
        <artifactId>struts2-junit-plugin</artifactId>
        <version>${struts2.version}</version>
        <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>${log4j2.version}</version>
    </dependency>

    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.5</version>
        <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
        <scope>provided</scope>
    </dependency>

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jsp-api</artifactId>
        <version>2.0</version>
        <scope>provided</scope>
    </dependency>

</dependencies>

<build>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.3</version>
            <configuration>
                <encoding>UTF-8</encoding>
                <source>1.5</source>
                <target>1.5</target>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.mortbay.jetty</groupId>
            <artifactId>jetty-maven-plugin</artifactId>
            <version>8.1.16.v20140903</version>
            <configuration>
                <stopKey>CTRL+C</stopKey>
                <stopPort>8999</stopPort>
                <systemProperties>
                    <systemProperty>
                        <name>xwork.loggerFactory</name>
                        <value>com.opensymphony.xwork2.util.logging.log4j2.Log4j2LoggerFactory</value>
                    </systemProperty>
                </systemProperties>
                <scanIntervalSeconds>10</scanIntervalSeconds>
                <webAppSourceDirectory>${basedir}/src/main/webapp/</webAppSourceDirectory>
                <webAppConfig>
                    <descriptor>${basedir}/src/main/webapp/WEB-INF/web.xml</descriptor>
                </webAppConfig>
            </configuration>
        </plugin>
    </plugins>
</build>

2 个答案:

答案 0 :(得分:0)

您正在使用struts2-junit-plugin,它具有对Spring的传递依赖性。这些依赖项也可以从中央Maven存储库获得。例如spring-beans-4.1.6.RELEASE

为什么在您的问题中无法看到依赖关系的解析不起作用。它可能是从错误配置(例如settings.xml,私有存储库,身份验证)到网络问题(例如私有存储库无法访问)的所有内容。

答案 1 :(得分:0)

你的log4j2版本也错了。所有log4j2版本均以2.开头。当前版本为2.8。