eclipse中maven的run as打war包失败的问题

场景一:

由于某些原因,有的时候需要暂时在断网的情况下,或者更标准的说,是在连不上公司的maven公有仓库的情况下打包。

很长一段时间,我打包都是在eclipse中用run as在线打包,直到前不久一次连不上公有仓库时打包出错,具体的错误因为某些原因,暂时无法重现,也就无法截图。

后来我的解决办法是,在maven的settings.xml文件中加入离线配置,如下图的

<offline>true</offline>

这个配置默认是没有的,没有的情况下默认是<offline>fasle</offline>.

为了验证更改有效,我特意拔去了网线打包,结果果然成功。

但是有些郁闷的是,我无法断定是否是eclipse的问题,就如上图一样,我再把这个配置注释掉以后,再次打包却也开始屡屡成功,因此本想把之前的错误截个图都无法实现。

但可以肯定的是,当我没有更改这个配置之前,凡离线打包,屡试屡败,自从改过以后,虽然又注释了,但是再离线打包,都是屡试屡成。

因此,如果有人遇到这种需要离线打包却又不成功的情况,可以尝试一下这个方法,或许也就成功了。

场景二:

最近我的eclipse出了很多毛病,重装了多次依旧没有解决这些问题,例如编译突然变得特别慢,常常在更改代码以后重启tomcat不再自动编译(有配置的情况下),还有就是很多项目依赖的jar包,maven不会自动加载,导致需要force update。

也正是因为这个问题,导致我打包过程中报错如下:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project pbossvisual: Compilation failure: Compilation failure:
[ERROR] /D:/eclipseWorkspace1/pbossvisual1/src/main/java/com/cmsz/pbossvisual/alarmset/model/AlarmData.java:[1,1] 非法字符: \65279
[ERROR] /D:/eclipseWorkspace1/pbossvisual1/src/main/java/com/cmsz/pbossvisual/alarmset/model/AlarmData.java:[1,10] 需要class, interface或enum
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project pbossvisual: Compilation failure
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
	at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
	at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:120)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:355)
	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:155)
	at org.apache.maven.cli.MavenCli.execute(MavenCli.java:584)
	at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:216)
	at org.apache.maven.cli.MavenCli.main(MavenCli.java:160)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
	at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
	at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.compiler.CompilationFailureException: Compilation failure
	at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:858)
	at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:129)
	at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:132)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
	... 19 more
[ERROR]
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

对于这个错,我一开始也有点丈二和尚摸不着头脑,但是查了若干资料后,再在eclipse中乱点了一通后终于发现问题所在。

我发现,正常情况下右键项目的build path,会是如下图所示:

而这种打包失败的情况下,build path打开后确实如下图所示:

可以看出图2比图1少了一行,而正是这一行导致打包失败。

因为少了这一行,maven打包时就无法找到相应的依赖包,从而出现了如上所示的错误,于是我手动add,如下图:

之后再次打包便没有了之前的问题,经过几次尝试,结果都是和料想一样,若有人遇到类似的情况,也不妨一试。

时间: 2024-09-08 11:19:49

eclipse中maven的run as打war包失败的问题的相关文章

使用eclipse和maven生成java web程序war包

一.eclipse中,在需要打包的项目名上右击,然后把鼠标光标指向弹出框中的"run as": 二.之后会看到在这个弹出框的右侧会出现一个悬浮窗,如下: 三.在上边的第二个悬浮窗鼠标点击"maven  clean",maven会清除掉之前对这个项目的打包信息:执行以后在eclipse的控制台console会看到如下信息: 四.然后重复一.二步,选择"mavenbuild",会看到如下弹出界面,在"Goals"后的文本框内输入&

Maven使用笔记(二)Eclipse中maven项目添加依赖

1.在Eclipse中创建Eclipse项目后如何添加jar包? 点击pom.xml文件.我们可以看到下面有7个标签. 各个标签的含义如下: Overview:显示maven项目的一些基本信息Dependencies:添加jar包的页面Plugins:添加maven插件的页面.比如tomcat-maven-plugin等Dependency Hierarchy:用于显示jar包的依赖关系.没事的时候可以看看jar包的依赖关系Effective POM:显示maven的编译路径,plugin之类的

eclipse中maven项目编译出来,没有mybatis的mapper.xml

问题描述 如题,只有xxxMapper.class文件,好奇怪啊我单独新建个普通的Dynamic Web Project,又是可以正常编译的. 解决方案 在<build>中加 <resources> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.properties</include> <incl

Eclipse Web项目打成war包的方法图解_java

war包即Web归档文件,将Web项目打成war包可以直接拷贝到Web服务器发布目录(例如Tomcat服务器webapps目录 ),当Tomcat启动后该压缩文件自动解压缩,war包方便了web工程的发布,那么在Eclipse中如何将Web项目打成war包呢?           1.有如下venus工程:           2.鼠标选中venus工程并点击鼠标右键,出现下图:           3.鼠标箭头滑到Export选项-->Export...,点击"Export...&quo

Eclipse使用maven搭建spring mvc图文教程_java

本文为大家介绍了Eclipse使用maven搭建spring mvc的详细步骤,供大家参考,具体内容如下 1. 环境配置 a). Java 1.7 b). Eclipse luna c). Maven3.2.5 d). Spring 4.1.4 2. 创建maven工程 a). 打开eclipse,file->new->project->Maven->Maven Project b). 下一步 c). 选择创建的工程为webapp,下一步 d). 填写项目的group id和art

maven-Eclipse中Maven工程缺少Maven Dependencies

问题描述 Eclipse中Maven工程缺少Maven Dependencies 如图,缺少maven的jar包 导致全部报错 而且我发现这个应该是我频繁的从GIT上拉代码,然后删掉本地,再拉 之后出的这个错误,看了网上的解决方案都没用 解决方案 可以看看这里http://fanli7.net/a/bianchengyuyan/C__/20150225/538504.html 要修改下.classpath文件 解决方案二: Eclipse在引入Maven工程后,找不到Maven Dependen

在Eclipse中运行Solr 基础知识_java

Solr我还是个菜鸟,写这一些文章只是记录一下最近一段时间学习Solr的心得. Solr是什么? 最近我学Solr的时候,一直看到一句话,Solr 是一个可供企业使用的.基于 Lucene 的开箱即用的搜索服务器.当时想了很久没看懂这句话是什么意思,什么是搜索服务器?当接触的深了才发现,所谓的搜索服务器,就是能够在服务器(Tomcat,Jetty)中运行的搜索程序的一个工程. Solr能做什么? 了解过Lucene的人都知道,Lucene在做两件事情,索引管理与搜索,Solr同样也不例外,做的也

如何在 Eclipse 中使用命令行

虽然我们已经有了像 Eclipse 这样高级的 IDE,但是我们有时候也是需要在开发的时候使用 Windows 的命令行,来运行一些独立的程序.在两个程序中切换来切换去是很麻烦的.所以 Eclipse 提供了这样的工具,让我们在 Eclipse 中使用 Windows 命令行.  第一步:设置一个新的外部配置工具  在 Eclipse 中,选择 "Run -> External Tools -> External Tools Configurations"   第二步:点击

websphere7 启动war包 Failed to load MBeanServerBuilder class

问题描述 本来是osgi应用,利用eclipse官方提供的方式打成了war包,也做了桥接.在Tomcat下能正常启动,但在websphere7中启动时遇到如下两个问题.请高手给点提示吧~第一个问题:[5/30/149:23:05:552CST]00000027jdbcEErrorwhileregisteringOracleJDBCDiagnosabilityMBean.javax.management.JMRuntimeException:FailedtoloadMBeanServerBuild