关于maven项目在引入java project 时,打war包出错的问题
2015-07-24 16:39
549 查看
关于项目部署问题;
步骤:
1.将java project 导出为jar包
2.将jar放入本地m2库中
3.将webapp项目用maven打包
4.部署到tomcat服务器中
1.打jar包时注意勾选 add directory entries
2.将打好的jar包放入maven本地库中
mvn install:install-file -Dfile=D:\fanghui\scs.jar -DgroupId=tpy.pacfang.oa -DartifactId=scs -Dversion=5 -Dpackaging=jar
3.将jar包的依赖添加到pom文件中
<dependency>
<groupId>tpy.pacfang.oa</groupId>
<artifactId>scs</artifactId>
<version>5</version>
</dependency>
在pom文件中添加打包依赖
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>com.allen.capturewebdata.Main</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
5.生成maven的war包
在run as 中先要将maven项目maven clean的一下,然后用maven install生成war包
或者在cmd中使用mvn package命令来生成war
war生成的路径在项目的target下面
注意:
生成war包是发布可能会出现jar文件项目不能被spring扫描的情况。
此时要足以一下几点
1.扫描的路径要尽可能的包含文件类
<!-- 扫描 -->
<context:component-scan base-package="tpy.*" />
2.查看tomcat运行环境和IDE编译环境是否一样
修改window -- preference -- java --compiler -- compiler compliance level 选择和服务器一样的版本
3.查看java project项目中
org.eclipse.jdt.core.prefs
org.eclipse.wst.common.project.facet.core.xml
中java版本是否和服务器版本一样
在生成war时问题最多的就是项目不能扫描jar包中的类
这个问题如果你的项目本身没有问题,那么看注意三个解决方案就可以搞定
发布项目:
1.你可以直接将war放入tomcat的wabapps下面,启动服务器就可以自动解析
2.也可以登录tomcat的manage管理中直接上传war
步骤:
1.将java project 导出为jar包
2.将jar放入本地m2库中
3.将webapp项目用maven打包
4.部署到tomcat服务器中
1.打jar包时注意勾选 add directory entries
2.将打好的jar包放入maven本地库中
mvn install:install-file -Dfile=D:\fanghui\scs.jar -DgroupId=tpy.pacfang.oa -DartifactId=scs -Dversion=5 -Dpackaging=jar
3.将jar包的依赖添加到pom文件中
<dependency>
<groupId>tpy.pacfang.oa</groupId>
<artifactId>scs</artifactId>
<version>5</version>
</dependency>
在pom文件中添加打包依赖
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>com.allen.capturewebdata.Main</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
5.生成maven的war包
在run as 中先要将maven项目maven clean的一下,然后用maven install生成war包
或者在cmd中使用mvn package命令来生成war
war生成的路径在项目的target下面
注意:
生成war包是发布可能会出现jar文件项目不能被spring扫描的情况。
此时要足以一下几点
1.扫描的路径要尽可能的包含文件类
<!-- 扫描 -->
<context:component-scan base-package="tpy.*" />
2.查看tomcat运行环境和IDE编译环境是否一样
修改window -- preference -- java --compiler -- compiler compliance level 选择和服务器一样的版本
3.查看java project项目中
org.eclipse.jdt.core.prefs
org.eclipse.wst.common.project.facet.core.xml
中java版本是否和服务器版本一样
在生成war时问题最多的就是项目不能扫描jar包中的类
这个问题如果你的项目本身没有问题,那么看注意三个解决方案就可以搞定
发布项目:
1.你可以直接将war放入tomcat的wabapps下面,启动服务器就可以自动解析
2.也可以登录tomcat的manage管理中直接上传war
相关文章推荐
- Java(String) 常用字符串函数
- Java SPI 实例
- java从键盘输入数据的两种方法
- 如何取得Spring管理的bean (请用第3种方法):
- Spring IOC源码详解之总体结构
- java 如何获取得到两个list中不同的数据
- java 执行Sql文件
- java学习笔记--Exception
- Eclipse 安装php插件
- javafx中vbox控件最下面的控件自动填充
- ACM基础——OJ上的Java代码提交规范
- Spring自定义消息转换器替换ResponseBody
- 【转】java反射详解
- 深入理解Java的接口和抽象类
- Spring @Transaction配置示例及发生不回滚原因深度剖析
- Java 类的卸载机制
- 【源代码】java.util.Vector
- 【通信】Netty JBOSS提供的一个java开源框架
- Java进阶(八)Java加密技术之对称加密 非对称加密 不可逆加密算法
- Java进阶(八)Java加密技术之对称加密 非对称加密 不可逆加密算法