Maven构建部署项目遇到的各种问题以及解决办法

版权声明:分享即是快乐。 https://blog.csdn.net/hacfox/article/details/60983372

最近才开始接触maven, 感觉很多东西都好刺激啊。_(:зゝ∠)_ 很多问题, 失败失败还是失败。

问题1:

刚开始在新建了一个maven project的, 发现JDK是1.5的, 而且项目还是小红叉, 瞬间感觉不爽了,换成了1.7之后使用了maven-update project,发现小红叉并未离我而去,JDK也变回了1.5版本。凸(艹皿艹 )

翻了翻资料, 于是在pom.xml中添加了一段代码

<profiles>
		<profile>
			<id>jdk-1.7</id>
			<activation>
				<activeByDefault>true</activeByDefault>
				<jdk>1.7</jdk>
			</activation>
			<properties>
				<maven.compiler.source>1.7</maven.compiler.source>
				<maven.compiler.target>1.7</maven.compiler.target>
				<maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion>
			</properties>
		</profile>
	</profiles>

╮(╯▽╰)╭, 小红叉终于消失不见了。这段代码差不多就是maven使用JDK1.7版本编译代码的意思。后来想想如果每次新建一个maven项目, 那每次都得加这段代码多麻烦。肯定还有其他解决方法!

继续翻资料, 发现只要在maven的安装目录的conf文件夹找到setting.xml, 打开找到profiles节点,将上述profiles节点里面的代码添加进去保存, OK大功告成!


问题2:

当然在你部署的之前, 你得做好准备工作, 那就是配置tomcat以及maven部署的配置,。

第一步: Maven的Server的配置:在Maven的安装路径找到conf目录下的setting.xml文件,在<servers>节点中添加tomcat7下配置的用户信息(id可以任意填写,但username和password必须和步骤1一致):

<server>
	<id>tomcat7</id>
	<username>admin</username>
	<password>password</password>
</server>

第二步:在Web项目的pom.xml文件的<plugins>节点中,添加tomcat7的maven插件。

<build>
		<finalName>ssm</finalName>
		<plugins>
			<plugin>
				<groupId>org.apache.tomcat.maven</groupId>
				<artifactId>tomcat7-maven-plugin</artifactId>
				<version>2.2</version>
				<configuration>
					<!-- 注意此处的url -->
 					<url>http://localhost:8080/manager/text</url>
					<server>tomcat7</server><!-- 此处的名字必须和setting.xml中配置的ID一致-->
					<username>admin</username>
					<password>admin</password>
					<path>/ssm</path><!-- 此处的名字是项目发布的工程名-->
				</configuration>
			</plugin>
		</plugins>
	</build>


部署吧!然后这个地方也出了问题, 在url节点, tocmat6以及之前的版本的配置,和tomcat7是不同的。tomcat7中的tomcat7-maven-plugin中的configuration中的url为http://localhost:8080/manager/text,而tomcat6中的为http://localhost:8080/manager, 还是老老实实的加上/text吧。
╮(╯▽╰)╭ ,继续 部署吧! 这时候, 出了一个 
No plugin found for prefix 'tomcat' in the current project and in the plug
三脸懵逼, 好刺激啊!!!翻资料翻资料!

原来要在project节点下,在插件仓库(plugin repositories)和普通仓库(repositories)中添加以下仓库到pom.xml,保证maven可以从仓库中

下载到tomcat-maven-plugin插件,少添加了这段信息,会出现这个报错信息, 代码如下:

<repositories>
		<repository>
			<id>people.apache.snapshots</id>
			<url>http://repository.apache.org/content/groups/snapshots-group/</url>
			<releases>
				<enabled>false</enabled>
			</releases>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
		</repository>
	</repositories>
	<pluginRepositories>
		<pluginRepository>
			<id>apache.snapshots</id>
			<name>Apache Snapshots</name>
			<url>http://repository.apache.org/content/groups/snapshots-group/</url>
			<releases>
				<enabled>false</enabled>
			</releases>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
		</pluginRepository>
	</pluginRepositories>
差不多了吧!继续部署。还是出错了, 报错信息忘记保存了。是一个什么tomcat拒绝连接吧。

等等!!!是不是tomcat还没有启动。。- -还真的是, 乖乖的启动了tomcat。继续构建部署。嘿嘿!build success!一步三个坑 - -还好搞定了。

[INFO] tomcatManager status code:200, ReasonPhrase:OK
[INFO] OK - Deployed application at context path /ssm
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 11.705 s
[INFO] Finished at: 2017-03-09T23:02:39+08:00
[INFO] Final Memory: 18M/154M
[INFO] ------------------------------------------------------------------------

继续加油吧。

展开阅读全文

没有更多推荐了,返回首页