Java 无法在Eclipse IDE中更改Maven版本
在Eclipse内部的mvn包失败但在终端中成功后,我意识到Eclipse运行的是Maven 3.3.3,而终端运行的是3.3.9。我试图通过转到Java 无法在Eclipse IDE中更改Maven版本,java,eclipse,maven,Java,Eclipse,Maven,在Eclipse内部的mvn包失败但在终端中成功后,我意识到Eclipse运行的是Maven 3.3.3,而终端运行的是3.3.9。我试图通过转到eclipse->Preferences->Maven->Installations并指向我的3.3.9文件夹来重新配置eclipse,但所有明显的帐户都成功了。我重新启动了Eclipse并再次尝试,但没有可用的。此外,尝试生成时,不会确认对pom.xml文件的更改。我插入了不适当的斜杠和其他字符,只能生成此错误: 组装WAR时出错:需要web.xml
eclipse->Preferences->Maven->Installations
并指向我的3.3.9文件夹来重新配置eclipse,但所有明显的帐户都成功了。我重新启动了Eclipse并再次尝试,但没有可用的。此外,尝试生成时,不会确认对pom.xml
文件的更改。我插入了不适当的斜杠和其他字符,只能生成此错误:
组装WAR时出错:需要web.xml属性(如果在更新模式下执行,则为预先存在的web-INF/web.xml)
我根据建议修改了pom文件,但正如我所说,maven没有识别pom的更改,我无法运行mvn--version
,以产生3.3.9。我已经在下面附上了我的pom.xml
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.javawebtutor</groupId>
<artifactId>LoginWebApp</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>LoginWebApp Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.30</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
</dependency>
</dependencies>
<build>
<finalName>LoginWebApp</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<webXml>src\main\webapp\WEB-INF\web.xml</webXml>
</configuration>
</plugin>
</plugins>
</build>
4.0.0
com.javawebtutor
LoginWebApp
战争
1.0-快照
LoginWebApp Maven Webapp
http://maven.apache.org
javax.servlet
servlet api
2.5
mysql
mysql连接器java
5.1.30
朱尼特
朱尼特
4.10
LoginWebApp
org.apache.maven.plugins
maven战争插件
src\main\webapp\WEB-INF\WEB.xml
通常,您必须重新安装m2eclipse插件才能以正确的版本运行。如果它被更新,它将无法与前一个版本一起工作,因为它将采用“旧”maven版本 尝试设置运行时配置,或者查看是否已经在使用 在eclipse中,右键单击项目->运行方式->运行配置。查找左侧的
m2 Maven Build
部分。如果项目名称下有一个,则编辑它,否则创建一个。对话框底部有一个下拉列表,允许您选择要运行的maven配置:
这为我提供了以下输出:
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11 10T11:41:47-05:00)
Maven home: C:\Program Files\Java\apache-maven-3.3.9
Java version: 1.7.0_80, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk1.7.0_80\jre
Default locale: en_US, platform encoding: UTF-8
OS name: "windows 8.1", version: "6.3", arch: "amd64", family: "windows"
- 调用
,键入cmd
检查环境变量:systempropertiesadvanced
,%MAVEN\u HOME%
%PATH%
- 检查以下步骤:
查看下面的屏幕截图(这与您的问题有关): 嵌入式:3.3.3
外部日食:3.3.9
(来源:这是我的网站)首先不要在pom文件中使用反斜杠,因为您可以使用斜杠,它与平台无关。此外,您不需要将路径设置为
web.xml
,因为默认路径位于src/main/webapp/web-INF/web.xml
…除此之外,如果您收到消息WAR:web.xml属性是必需的
,您应该将其放置在适当的位置。如果您确定不需要它,可以使用false
…来实现这一点,这一点非常重要。定义您正在使用的插件的版本…顺便说一句:我永远不会在Eclipse中打包..您仍然可以使用此工具获得特定于版本的依赖项错误。请参阅安装屏幕底部的说明:“注意:嵌入式运行时始终用于依赖项解析”。在Mac中也适用于我,但不适用,eclipse for me仍在使用嵌入式maven版本