Maven工程的一个更新问题

本文详细介绍了使用MyEclipse导入Maven管理工程后遇到pom.xml报错问题的解决方法,包括设置代理、禁用MyEclipse更新、修改Maven配置文件settings.xml等。重点分享了通过修改settings.xml文件添加镜像源解决报错问题的过程。

最近接手了一个工程,原工程是Maven管理,之前很少使用这个工具,使用myeclipse导入工程后发现报错,一一解决之后发现有个问题,一直没办法解决,问题的是Maven的pom.xml文件报出来的,一下是截图:

求助百度google大神,折腾了半天终于解决,下面总结一下我尝试的方法,也是网上介绍的几种方法,大概有,设置代理,禁用myeclipse更新,修改Maven的配置文件settings.xml

我最先尝试的是设置代理的方式,这个也是搜到结果最多的,这个方式有个很明显的缺点,就是如果你没有代理的话,想寻找一个免费的代理实在太困难,而且即便是找到也不一定稳定,以后代理失效,问题还是同样会暴露出来,我由于没有代理,所以网上找了很多个去尝试,都宣告失败,最终选择放弃,这里还是说说这个代理怎么设,代理的设置有两种方式:

1.修改settings.xml配置文件,如果你是单独的使用maven的话,这个文件就在maven的conf目录下找到proxies标签配置如下:

<proxies>
    <!-- proxy
     | Specification for one proxy, to be used in connecting to the network.
     | -->
    <proxy>
      <id>optional</id>
      <active>true</active>
      <protocol>http</protocol>
      <host>216.144.236.136</host>
      <port>7808</port>
      <!--
      <username>proxyuser</username>
      <password>proxypass</password>
      <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
    	-->
    </proxy>
   
  </proxies>

host和port分别是ip和端口

如果是使用的myeclipse这个文件应该在c盘用户文件夹下.m2下面,如果没有可以从别处拷贝一个配置和上面一样

2.第2中方式是在myeclipse中添加代理,配置如下图:

 

第二种方法我没尝试过,但是应该也是可行的,就是将myeclipse的maven更新去掉,具体做法如下图:

将图中的勾去掉即可。这种方式虽然可行但是以后就不会再更新了,从某种程度上说是因噎废食。

 

最后一种方式也是使我最终解决问题的方法,具体介绍在这里:

http://www.360doc.com/content/12/0325/22/834950_197669976.shtml

这里也将其贴出:就是修改maven的配置文件settings.xml,向方法一中一样找到maven的配置文件,找到mirror属性,添加如下:

 <mirror>
      <id>UK</id>
      <mirrorOf>central</mirrorOf>
      <name>UK Central</name>
      <url>http://uk.maven.org/maven2</url>
    </mirror>

再将Maven工程刷新一下,clean,build一次错误就消失了了。

<think>我们正在处理用户关于“使用Eclipse建立Maven工程”的查询。根据引用内容,我们需要提供详细步骤。 引用[1]描述了新建Maven工程和导入Maven工程的基本步骤。 引用[2]提到了Eclipse整合Maven的步骤及问题解决方案,包括JDK、Tomcat和Maven的配置。 引用[3]详细介绍了两种创建Maven的Java Web项目的方式(选择archetype和跳过archetype)。 引用[4]提到了Maven项目的标准目录结构。 引用[5]提到了修改web.xml为3.0版本。 用户的问题是:“我想获取使用Eclipse建立Maven工程的方法 请问使用Eclipse建立Maven工程的详细步骤” 我们将结合这些引用来创建一个详细的步骤指南,重点在于创建一个简单的Maven项目(可能是普通Java项目或Web项目),并注意常见问题。 由于引用中提到了两种创建Web项目的方式,我们将分别介绍这两种方式,但首先介绍创建简单Maven工程(非Web)的步骤,因为这是基础。 步骤安排: 1. 准备工作:确保Eclipse已整合Maven(安装Maven插件并配置) 2. 创建简单的Maven工程(非Web,如Java项目) 3. 创建Maven Web项目的两种方式(使用archetype和跳过archetype) 4. 常见配置(设置JDK、Tomcat、解决报错等) 注意:根据引用[3],这里基于jdk1.8,maven3.6.3,eclipse(2017版)示例。 由于用户可能不需要Web项目,我们先从最基础的创建简单Maven工程开始,然后扩展到Web项目。 另外,引用[1]中提到了从已有项目拷贝pom.xml内容或资源文件来节省时间,我们也会在注意事项中提到。 我们将按以下结构回答: 一、准备工作 二、创建简单Maven工程(非Web) 三、创建Maven Web项目(使用archetype) 四、创建Maven Web项目(跳过archetype) 五、常见配置与问题解决 每个步骤都会详细说明,并注意引用来源。 </think>### 使用Eclipse建立Maven工程的详细步骤 以下是基于Eclipse创建Maven项目的完整流程,结合标准实践和常见问题解决方案: --- #### **一、环境准备** 1. **安装配置** - JDK 1.8+(配置JAVA_HOME环境变量)[^2] - Maven 3.6.3+(配置MAVEN_HOME并添加到PATH)[^3] - Eclipse IDE for Enterprise Java Developers(建议2017+版本)[^3] 2. **Eclipse整合Maven** ```路径 Window → Preferences → Maven 勾选"Download repository index updates on startup" 设置User Settings指向conf/settings.xml ``` --- #### **二、创建简单Maven工程** 1. **新建项目** ```路径 File → New → Other → MavenMaven Project → Next ``` - 勾选**Create a simple project**(跳过archetype选择)[^1] - 设置项目位置和名称(如`demo-project`) 2. **配置项目参数** ```xml Group Id: com.example(组织标识) Artifact Id: demo-project(项目名称) Packaging: jar(默认打包方式) Version: 1.0-SNAPSHOT ``` > 点击Finish生成基础项目[^1] 3. **目录结构验证** ```目录树 src/main/java # Java源代码 src/main/resources # 配置文件(如log4j2.xml) src/test/java # 测试代码 pom.xml # Maven核心配置文件[^4] ``` --- #### **三、创建Maven Web工程** ##### 方式1:使用webapp archetype(推荐)[^3] 1. 新建项目时**取消勾选**Create a simple project 2. 选择过滤器:`org.apache.maven.archetypes:maven-archetype-webapp` 3. 完成后自动生成: ```目录树 src/main/webapp ├── WEB-INF │ └── web.xml └── index.jsp ``` ##### 方式2:手动转换普通项目为Web项目 1. 在简单工程上右键: ```路径 Properties → Project Facets → Convert to Faceted Form ``` 2. 勾选**Dynamic Web Module** 3.0+ 3. 指定web目录为`src/main/webapp`[^4] --- #### **四、关键配置** 1. **修复Web 3.0支持** 修改`web.xml`为 Servlet 3.0+ 规范[^5]: ```xml <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> ``` 2. **配置编译器版本** 在`pom.xml`中添加: ```xml <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties> ``` 3. **Tomcat集成** - 添加Maven插件: ```xml <build> <plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> </plugin> </plugins> </build> ``` - 运行:`mvn tomcat7:run`[^3] --- #### **五、常见问题解决** 1. **index.jsp报错** - 添加Servlet API依赖: ```xml <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.1</version> <scope>provided</scope> </dependency> ``` 2. **目录结构异常** 右键项目 → Build Path → Configure → 添加`src/main/java`为源码目录 3. **依赖下载失败** Maven镜像源(修改settings.xml): ```xml <mirror> <id>aliyun</id> <url>https://maven.aliyun.com/repository/public</url> <mirrorOf>central</mirrorOf> </mirror> ``` --- #### **六、最佳实践** 1. **复用配置模板** 从已有项目拷贝`pom.xml`的依赖配置和插件配置[^1] 2. **资源文件管理** - 配置文件统一放在`src/main/resources` - Web资源放在`src/main/webapp`[^4] 3. **版本控制** 使用`<dependencyManagement>`集中管理依赖版本 > 操作完成后执行`mvn clean install`验证构建[^2] --- ### 相关问题 1. Maven项目中如何管理多模块依赖? 2. Eclipse中如何调试Maven构建失败的问题? 3. 如何将传统Web项目迁移到Maven项目? 4. Maven私服(Nexus/Artifactory)如何配置使用? 5. 如何通过命令行创建Maven Web项目?[^3] [^1]: 新建Maven工程的核心步骤 [^2]: 环境配置要点 [^3]: Web项目创建的两种方式 [^4]: 标准目录结构规范 [^5]: Servlet版本兼容性修复
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值