我使用maven很不熟练,在eclipse上开发时编译相关的配置都是由eclipse完成的。
而今天需要将maven工程从svn上checkout到linux服务器上,并且由maven编译,就有问题了。
首先,是maven的编译版本不对,默认的是1.3,很多想注解,foreach的用法主有1.5之后才支持。
经过询问得知,由于要部署的web工程是通过eclipse的maven设置向导新创建的,所以pom里的一些配置并没有继承工程组的pom文件里的配置,所以才编译版本过低。在pom文件加上下面代码后则问题解决:
<parent>
<artifactId>api-t-xxx</artifactId>
<groupId>com.xxx.t</groupId>
<version>1.1-SNAPSHOT</version>
</parent>
经研究发现在工程组的pom文件里,无非就是在build标签里多了下面一段代码,所以我觉得(并没实验)在自己创建的maven工程的pom文件里加上它也应该就能解决问题:
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<inherited>true</inherited>
<configuration>
<fork>true</fork>
<meminitial>128m</meminitial>
<maxmem>768m</maxmem>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.1</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<compilerArguments>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
</compilerArguments>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.0-beta-9</version>
<configuration>
<tagBase>http://192.168.105.28:89/svn/t-sohu/web2.0/api-t-sohu-2.0/tags</tagBase>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.1</version>
</plugin>
</plugins>
其次,是maven编译的路径不对,我之前在eclipse上通过build path设置的编译路径跟maven中的配置是半毛钱关系没有,最终加上下面代码才将问题解决:
<build>
<finalName>upload</finalName>
<outputDirectory>src/main/webapp/WEB-INF/classes</outputDirectory>
</build>
分享到:
相关推荐
jenkins和maven配置自动编译打包和发布java项目
Maven多模块项目编译速度慢,下面我们来学习下优化的方法。 mvn clean package -T 4C -Dmaven.test.skip=true -Dmaven.compile.fork=true -T 4C 代表本机4个CPU内核都参与编译工程, -Dmaven.test.skip=true 代表...
于是后面我用了jrebel实现热编译,这样开发就方便了很多,后面开发都只需要编译一次,有代码或者页面改动,都会自动去编译,不用maven再重新编译发布一次,过程已经整理出文档,按照文档配置就可以实现热编译。...
maven 配置简介及项目创建,包括pom.xml详细介绍,eclipse平台maven创建项目编译等
maven工具的使用 目 录 Maven 环境的配置 1. settings.xml存放路径 1 ...8. 编译打包maven项目 9 9. MAVEN 查找类库: 10 10. MAVEN本地jar包初始化 11 11、MAVEN安装到私服(依赖于Maven Nexus配置) 11
maven安装、配置,以及在eclipse下搭建开发环境,建立javaweb项目,并运行
3.3 配置Maven仓库 6 4. 开发应用 8 4.1 新建工程 8 4.2 Maven生命周期 13 4.3 Run As 15 4.4 Maven Build(compile) 16 4.5 Maven Build(package) 16 4.6 Maven Install(安装) 17 4.7 Maven Clean 18...
flume 1.8所有源代码 编译通过版 附 maven3.5.2 安装包 解压配置maven,利用命令行进行编译,导入eclipse,可用于源代码查看,搭建flume远程测试环境
Maven是一个采用纯Java编写的开 源项目管理工具。Maven采用了一种被称之为project object model (POM)概念来管理项目,所有的项目配置信息都被定义在一个叫做P
编译Hadoop源码需要的maven文件,编译Hadoop源码需要的maven文件.
一、环境:java EE IDE 、JDK1.8、maven 3.0.5 1、什么是Maven? Maven是一个项目管理工具,主要用于项目构建,依赖管理,项目信息管理。 2.下载及安装 下载最新版 Maven:apache-maven-3.2.1-bin.zip。官网下载...
Maven3使用配置步骤 1. 下载Maven 2. 安装Maven 3. 设置仓库位置 4. 创建maven项目 5. 编译项目代码 6. 导入eclipse工具 7. 包的更新与下载
Jenkinsfile调用jdk命令和maven或grandle编译命令工具配置
1.1. 配置Maven2 3 1.2. 配置Eclipse环境变量MIA_LIB 4 1.3. 安装Maven2 的eclipse plugin 4 2. Maven2使用说明 5 2.1. 简单例子 5 2.2. groupId, artifactId, version的作用 7 2.3. Maven2的plugin, goal和phase的...
开发人员只需要做一些简单的配置,Maven 就可以自动完成项目的编译、测试、打包、发布以及部署等工作。 Maven 是使用 Java 语言编写的,因此它和 Java 一样具有跨平台性,这意味着无论是在 Windows ,还是在 Linux ...
Apache Maven 3.9.6-bin 是 Apache Maven 的一个特定版本,其中的“bin”表示这是二进制分发版,适用于直接使用而无需进行编译。 该安装包包含了 Maven 3.9.6 版本的所有必要文件和目录,使用户能够轻松地在其...
第9章:使用Nexus创建私服/9.5 配置MAVEN从Nexus下载构件/9.5.2 setting.xml方式(适合所有项目) 第9章:使用Nexus创建私服/9.6 部署构件到Nexus/9.6.1 使用Maven部署构件到Nexus 第9章:使用Nexus创建私服/9.7 ...
将下载好的apache-maven-3.0.3解压缩后,配置Path环境变量即可。需要注意的是,安装Maven的机器上,需要JDK环境,并且JAVA_HOME环境变量的...【注意】第一次使用Maven进行编译的时候,Maven会自动从网上下载很多Jar包。
3、项目生命周期管理:Maven提供了一系列的构建阶段(如编译、测试、打包、部署等),你可以在pom.xml中配置这些阶段的行为,Maven会按照定义好的生命周期来执行相应的操作。 4、插件系统:Maven支持插件机制,你...
primefaces jsf作为画面表示层,后台是spring 和 hibernate框架, 采用maven编译