正确新建maven工程2

网上看到许多新建maven工程的文章,都比较老了,而且没讲清楚。

尤其是Cannot change version of project facet Dynamic web module to 3.0 这个问题,有些解决办法不是很好。

下面给大家讲讲如何正确地新建maven工程,以及为什么不能转成Dynamic web module3.0。

假设大家对eclipse都比较熟悉了,话不多说,请看图:

过滤器里输入web。我们要新建一个web工程。

新生成的工程默认的jdk和compiler是1.5的。而且没有src/main/java这样的目录。web.xml里也是2.3的。所以我们第一件事是修改web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://xmlns.jcp.org/xml/ns/javaee"
	xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
		http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
	id="WebApp_ID" version="3.1">

	<display-name>Archetype Created Web Application</display-name>
</web-app>

然后在这里把这两项取消勾选,点击OK

再次打开这个页面,把这两项勾选上,然后点击Further ocnfiguration available

把默认的编译路径remove掉(这个路径不正确,必须删掉,不然报错)。

换成src/main/java和src/main/resources. 输出路径改为target/classes

这一步结束后,我们的src/main/java目录也自动出现了。

最后就是这个样子的。点击Next

这一步不改成src/main/webapp。默认会生成一个WebContent目录。WebContent目录里的内容跟webapp重复了。我们用webapp即可。

效果图:

再看一下编译路径,很好。是我们要的效果。

JDK也是JavaSE-1.8,是我们要的效果。注意是JDK不是JRE。不要选成JRE

编译器也是1.8的。好的很

但是当我们maven>>update project以后

项目报错了 Dynamic Module 3.1 requires Java 1.7 or newer

JDK又变成一开始默认的1.5了。 这是因为POM.xml里没有配置。

<plugin>
	<artifactId>maven-compiler-plugin</artifactId>
	<version>3.1</version>
	<configuration>
		<source>1.8</source>
		<target>1.8</target>
	</configuration>
</plugin>

然后在maven>>update project 错误解决了。

最后把编码格式也设置一下,不然有中文的话编译可能会报错。

完整的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>net.csdn</groupId>
  <artifactId>mvn9</artifactId>
  <packaging>war</packaging>
  <version>0.0.1-SNAPSHOT</version>
  <name>mvn9 Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <properties>
	<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <finalName>mvn9</finalName>
    <plugins>
		<plugin>
			<artifactId>maven-compiler-plugin</artifactId>
			<version>3.1</version>
			<configuration>
				<source>1.8</source>
				<target>1.8</target>
			</configuration>
		</plugin>
<!-- 		<plugin> -->
<!-- 			<artifactId>maven-war-plugin</artifactId> -->
<!-- 			<version>2.4</version> -->
<!-- 		</plugin> -->
	</plugins>
  </build>
</project>

最后,再来看一下部署路径有没有问题。很好,是我们要的效果。

这样一个新的maven工程就建好了,总结一下:

1.出现Cannot change version of project facet Dynamic web module to 3.0 

的原因是我们的web.xml里写错了。从根源上解决问题。

2.maven>>update project之后,jdk和compiler变成了默认的1.5。所以要在pom.xml里配置一下。 不然会报

Dynamic Web Module 3.1 requires Java 1.7 or newer

3.maven compile 编译的时候报编码的错误。所以要在pom.xml里配置一下project.build.sourceEncoding。

时间: 2024-10-12 16:40:53

正确新建maven工程2的相关文章

新建maven工程时pom.xml报错

新建maven工程时,pom.xml报错:第一行报如下错误:multiple annotations found at this line后添加org.eclipse.m2e相关的plugin配置后,错误消失,完整pom.xml如下: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schem

新建Maven工程

这个如果不勾选那个Create a simple project也可以,但是创建完成后还需要修改工程的packaging为pom.还有如果不勾选,就选择maven-archetype-quickstart. 这里说明一下,这个packaging需要选择pom,因为这个maven project就是个模块化管理的,它自己实际上没有实际的内容的,只是包含了其它的模块.那么这里的新建时候有个src的文件夹可以直接删除. 下一步右键这个maven工程, 然后选择Maven Module 这里不用勾选这个

SSM学习-新建Maven工程

1.创建Maven工程 1.1 用elcipse新建一个简单的maven工程 1.2 设置maven工程的setting.xml配置文件 setting.xml配置如下 <?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2

解决新建maven工程没有web.xml的问题

首先确定创建maven工程时选择的打包方式为 war 创建后如图所示没有web.xml文件以及相关文件夹,错误信息:缺少web.xml文件 解决方法: 右击maven项目,找到ProjectFacets 取消选中 Dynamic Web Module选项,点击应用,再选中Dyanmic Web Module会出现一个选项卡 点击弹出的选项卡后 输入src/main/webapp点击OK web.xml已经出现,错误信息也消除了. 原文地址:https://www.cnblogs.com/chen

eclipse新建Maven工程时Nexus Indexer为空问题

安装配置完Maven和Nexus后(可参照http://blog.csdn.net/kingzone_2008/article/details/39454873),使用mvn命令行可以创建工程骨架:但使用eclipse存在如下问题. 问题截图如下图0: 图0. Nexus Indexer为空 由于Catalog选Nexus Indexer没有可用骨架列表,先试一下Internal的骨架,选择maven-archetype-webapp后,点击Finish.报错信息如图1所示. 从下图报错可以看出

【转】新建maven工程为什么jdk会是默认版本 而不是自己设置的版本?

原文链接:为什么我eclipse新建项目的时候默认的是JRE1.5? 修改Maven中conf目录里的setting.xml文件内容,加上如下内容: <profiles> <!-- profile | Specifies a set of introductions to the build process, to be activated using one or more of the | mechanisms described above. For inheritance pur

android maven eclipse里面新建maven工程The desired archetype does not exist

这个问题头疼死我了 重新配置下你看我的教程 我选的是local一直不出现最后的界面什么platform 16 等 这里一定要选择all catalogs这样过滤android出来的才有平台.到这里新建就不会有错误了 新手请多多指教

新建maven工程时报错:无法下载maven-archetype-quickstart

一.解决思路:下载最新版maven-archetype-quickstart-1.1.jar http://mvnrepository.com/artifact/org.apache.maven.archetypes/maven-archetype-quickstart/1.1\ 2.cmd窗口执行mvn install:install-file -DgroupId=org.apache.maven.archetypes -DartifactId=maven-archetype-quicksta

Eclipse配置maven和新建maven工程

1 安装配置Maven 1.1 下载Maven 从Apache网站 http://maven.apache.org/ 下载并且解压缩安装Apache Maven.  Maven下载地址: http://maven.apache.org/download.cgi 1.2 配置 Windows ----> Preferences ----> Installations ----> Add 1.3 配置maven的本地仓库 a. 选择硬盘的一个路径下,创建文件夹Repository.我的路径是