`

Maven项目错误解决小结

阅读更多

 

注:整理错误,不喜欢为了一个小问题,占篇幅,所以请Ctrl+F自己查看,定位问题,愿为解决.

注:网络上的错误解决经验,只是作者在特定的条件下发生,或者适合你不适合你,请勿责怪,若无解决答案,请你请教他人或耐心解决,可以记录之后分享,我们爱分享,一起开始吧!

问题1:

-Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable and mvn script match.

解决1:

[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. 可以设一个windows os's环境变量M2_HOME指向你的maven安装目录  
  2. M2_HOME=D:\Apps\apache-maven-3.3.1  
  3. 然后在Window->Preference->Java->Installed JREs->Edit  
  4. 在Default VM arguments中设置  
  5. -Dmaven.multiModuleProjectDirectory=$M2_HOME  
问题2:
java.lang.ClassNotFoundException: org.springframework.web.util.IntrospectorCleanupListener /org.springframework.web.context.ContextLoaderListener
解决2:
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. 选中项目->右键Properties->选择Deployment Assemby->选择Add->选中Java Build Path Entries->Next->选择Maven Dependencies->Finish->Apply->OK  
问题3:
The import com.tsxs.common.tool.ValidateCodeImg cannot be resolved
解决3:
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. Eclipse -> Project -> Clean...  
  2. Ok.  
问题4:
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'shiroDBRealm' is defined
解决4:
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. <property name="realm" ref="shiroDBRealm" />  
  2. <bean id="shiroDbRealm" class="com.tsxs.security.ShiroDbRealmUser"></bean>  
  3. 配置id和ref的大小写不一致(ctrl+f搜索不区分大小写一致).字母B/b.  
问题5:
java project 转换exchange maven project:
[ERROR] Plugin org.apache.maven.plugins:maven-jar-plugin:2.4 or one of its dependencies could not be resolved: Failure to find org.apache.maven.plugins:maven-jar-plugin:jar:2.4 in http://localhost:8081/nexus/content/groups/public was cached in the local repository, resolution will not be reattempted until the update interval of nexus has elapsed or updates are forced -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[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/PluginResolutionException
解决5:
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. 在Convert to Maven Project的时候修改pom.xml下:<version>0.0.1-SNAPSHOT</version>到<version>0.0.1</version>后maven clean install.  
问题6:
九月 13, 2015 1:20:48 上午 org.apache.catalina.core.StandardContext listenerStart
严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from file
[D:\developer\softwares\servers\apache-tomcat-8.0.24\webapps\weloveshare\WEB-INF\classes\applicationContext-mybatis.xml];
nested exception is com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 3 字节的 UTF-8 序列的字节 3 无效。
Caused by: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 3 字节的 UTF-8 序列的字节 3 无效。
error文件
解决6:
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. 最终解决:  
  2. 1使用软件"010 Editor是一个全新的十六进位文件编辑器"查看文件头有乱码,删除保存就ok了.  
  3. 2由于,我,重新整理的分区(双系统),无奈下,我重新搭建了一个项目,复制代码过去就ok了.  
问题7:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4或Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin: 2.4..
解决7:
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. 解决:重启一下console-nexus.bat就好了,或删除本地maven仓库对应的包(涉及到的根包一起删)  
问题8:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException
[ERROR] [Help 2] http://cwiki.apache.org/confluence/display/MAVEN/ModelParseException
解决8:
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. dependency没有在dependencies里面  
问题9:
maven中加入新的:dependency在install的时候,报错nexus没有相应的jar包
解决9:
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. 主要删除本地maven的repositories下的相应位置jar的路径,重新install就ok.  
  2. 或者重启nexus或没有启动nexus。  
问题10:
Java Project转maven project因为出错没有Maven Dependencies路径
解决10:
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. 工程右键:Maven->Disable Maven Nature  
  2. 然后,再次重新转maven:  
  3. Configure->Convert to Maven Project. ok!  
注:一般不用重启nexus服务器,除非由于进程端口占用或者服务停止,或者服务器关机或者死机,删除本地相对应的路径文件,clean install 则解决!
问题11:
设置pom.xml后,clean install编译不报错,就是不能加载Maven Dependencies和下载jar包
解决11:
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. 因为<dependency>在<dependencies>中,但<dependencies>又在<dependencyManagement>中,删除最外层的<dependencyManagement>后,clean install 则解决!区别解释,备注附件!  
问题12:
如果pom.xml中<dependency>标签报错画红线并报红叉,错误:Missing artifact mycoding.kaka:kaka:jar:0.0.1
在Markers中报错:
Description Resource Path Location Type
Missing artifact mycoding.kaka:kaka:jar:0.0.1 pom.xml /zJavaDemo line 20 Maven Dependency Problem
此问题解决,也适合第三方无依赖jar和本地扩展类加入maven统一管理
解决12:
1:如果为其他技术支持网站提供的的正确的依赖<dependency>,则删除本地maven的repositories下的相应位置jar的路径和所有文件,再clean install 则解决!
2:Maven自定义上传第三方包到3rd party(第三方无依赖jar和本地扩展类加入maven统一管理)
问题13:
Description Resource Path Location Type
Project configuration is not up-to-date with pom.xml. Run Maven->Update Project or use Quick Fix. webproject line 1 Maven Configuration Problem
 
解决13:
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. 项目上右键 ——> Maven ——> Update Project ……,打开一个(Update Maven Dependencies)的对话框,然后勾选住出错的项目,点击Ok  

问题14:
Description Resource Path Location Type
Java compiler level does not match the version of the installed Java project facet. webproject Unknown Faceted Project Problem (Java Version Mismatch)
 
解决14:
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. workspace下本项目的.setting下org.eclipse.jdt.core.prefs文件(修改和jdk一致版本):  
  2. eclipse.preferences.version=1  
  3. org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled  
  4. org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8  
  5. org.eclipse.jdt.core.compiler.compliance=1.8  
  6. org.eclipse.jdt.core.compiler.problem.assertIdentifier=error  
  7. org.eclipse.jdt.core.compiler.problem.enumIdentifier=error  
  8. org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning  
  9. org.eclipse.jdt.core.compiler.source=1.8  

问题15:
[ERROR] D:\DeveloperX\Code\Java\src\main\java\com\tsxs\module\utils\NetworkUtil.java:[3,25] 错误: 程序包javax.servlet.http不存在
[ERROR] D:\DeveloperX\Code\Java\src\main\java\com\tsxs\module\utils\NetworkUtil.java:[14,41] 错误: 找不到符号

解决15:
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. 项目右键 --> properties --> Java Build Path的libraries保证只有:JRE System Library[jdk1.8.0.66]和 Maven Dependencies   
  2. 注:如果还有Apache Tomcat v8.0[Apache Tomcat v8.0]则,Remove删除它,在pom.xml中添加以下依赖让maven统一管理!  
  3. 注:版本看自己jdk和tomcat版本  
  4.     <!-- servlet/jsp -->  
  5.     <dependency>  
  6.         <groupId>javax.servlet</groupId>  
  7.         <artifactId>javax.servlet-api</artifactId>  
  8.         <version>3.1.0</version>  
  9.     </dependency>  
  10.     <dependency>  
  11.         <groupId>javax.servlet.jsp</groupId>  
  12.         <artifactId>jsp-api</artifactId>  
  13.         <version>2.2</version>  
  14.     </dependency>  

问题15扩展:页面无controller处理跳转也需要15解决!
 <!-- 容器默认的DefaultServletHandler处理 所有静态内容与无RequestMapping处理的URL -->
 <mvc:default-servlet-handler />
 <!-- 定义无需Controller的url<->view直接映射 -->
 <mvc:view-controller path="/" view-name="redirect:/index.html" />
 
问题16:Description Resource Path Location Type
One or more constraints have not been satisfied. webproject line 1 Maven Java EE Configuration Problem
提示16:查看项目的jdk和compiler和eclipse工作空间workspace下项目下的个各个文件中版本号
 

 
备注附件(解释学习自网络资料,非常感谢作者):
[plain] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. dependencyManagement:  
  2. Maven 使用dependencyManagement 元素来提供了一种管理依赖版本号的方式。通常会在一个组织或者项目的最顶层的父POM 中看到dependencyManagement 元素。使用pom.xml 中的dependencyManagement 元素能让所有在子项目中引用一个依赖而不用显式的列出版本号。Maven 会沿着父子层次向上走,直到找到一个拥有dependencyManagement 元素的项目,然后它就会使用在这个dependencyManagement 元素中指定的版本号。  
  3. 如果有多个子项目都引用同一样依赖,则可以避免在每个使用的子项目里都声明一个版本号,这样当想升级或切换到另一个版本时,只需要在顶层父容器里更新,而不需要一个一个子项目的修改 ;另外如果某个子项目需要另外的一个版本,只需要声明version就可。  
  4. dependencyManagement里只是声明依赖,并不实现引入,因此子项目需要显式的声明需要用的依赖。  
  5. dependencies:  
  6. 相对于dependencyManagement,所有声明在dependencies里的依赖都会自动引入,并默认被所有的子项目继承。如果你要发布同样的代码,但是由于技术原因需要生成两个单独的构件,你就要使用一个分类器(classifier)。  
  7. classifier:  
  8. 如果你要发布同样的代码,但是由于技术原因需要生成两个单独的构件,你就要使用一个分类器(classifier)。  
  9. 例如,如果你想要构建两个单独的构件成JAR,一个使用Java 1.4 编译器,另一个使用Java 6 编译器,你就可以使用分类器来生成两个单独的JAR构件,它们有同样的groupId:artifactId:version组合。  
  10. 如果你的项目使用本地扩展类库,你可以使用分类器为每一个目标平台生成一个构件。分类器常用于打包构件的源码,JavaDoc 或者二进制集合。  
问题17:only whitespace content allowed before start tag and not \u0 (position: START_DOCUMENT se……
解决17删除本地库中所有文件,重新clean install.
分享到:
评论

相关推荐

    eclipse导入maven项目报错解决办法

    ### Eclipse导入Maven项目报错解决办法 在开发过程中,我们常常会遇到使用Eclipse导入Maven项目时出现的各种报错情况。本文旨在系统地介绍如何解决这些常见问题,包括但不限于配置环境、设置JDK版本、配置Maven库...

    idea2019导入maven项目中的某些问题及解决方法

    本文总结了在Idea2019中导入Maven项目时的一些常见问题和解决方法。 问题一:Maven版本不兼容 解决方法:下载Maven 3.6.1以前的版本,或者使用官网提供的链接下载。 问题二:设置Maven的Setting.xml文件 解决方法...

    ​实现maven项目中多版本依赖兼容使用解决方案

    以下是如何实现Maven项目中多版本依赖兼容的解决方案: 1. **理解Maven依赖管理**: Maven依赖管理遵循“传递性”原则,即项目可以直接依赖其他项目,间接依赖也会被自动引入。当出现相同类路径的冲突时,Maven会...

    maven打包出错解决办法,亲测绝对可以!

    总结,解决Maven打包出错需要对项目结构、依赖管理、插件配置等有深入理解。搭建Maven私服则能有效优化依赖下载过程,提升团队开发效率,同时保障内部代码的安全性。希望这些内容能对你在处理Maven相关问题时提供...

    maven项目搭建可能遇到的问题

    ### Maven项目搭建可能遇到的问题及解决方案 在进行Maven项目的搭建过程中,开发人员经常会遇到各种问题,这些问题如果不妥善处理,可能会严重影响项目的进度和质量。本文将详细介绍Maven项目搭建过程中可能遇到的...

    ssm的maven项目和ssm的web项目

    对比两个项目,Maven项目的优势在于标准化和自动化,它可以减少构建错误,使得团队协作更加顺畅。而非Maven项目可能更适合那些对传统构建方式更熟悉的开发者,或者在某些特定环境下,Maven可能不是最佳选择。 ...

    Eclipse中Maven项目创建及相关操作

    总结来说,Eclipse中的Maven项目创建和管理涉及了Maven插件的安装、库路径的配置、项目创建过程以及解决可能出现的结构问题。理解这些步骤将帮助开发者更高效地使用Maven进行项目构建,同时利用Eclipse的强大功能...

    jenkins实现maven项目自动部署到tomcat

    【Jenkins实现Maven项目自动部署到Tomcat】是一篇关于自动化构建和部署流程的教程。该文档旨在教你如何利用Jenkins自动化处理Maven项目的编译、打包和部署到Tomcat服务器的过程,使得开发工作更加高效。以下是详细的...

    maven项目开发的maven3.3.9使用包

    2. **坐标(Coordinates)**:每个Maven项目都有唯一的标识,由groupId、artifactId和version组成,用于区分不同的项目和版本。 3. **依赖管理(Dependency Management)**:Maven通过声明依赖于其他项目的jar包,...

    手把手图解,详解Jenkins ,svn ,maven 项目持续集成 SHELL 脚本

    "手把手图解,详解Jenkins,svn,maven项目持续集成SHELL脚本"这个标题表明了本文将通过图形化的解释,详细介绍如何使用Jenkins、Subversion(svn)和Maven这三个工具来实现软件项目的持续集成,并涉及到使用SHELL脚...

    myeclipse从svn服务器上检出maven工程

    通过以上步骤,我们可以在MyEclipse中成功地从SVN服务器检出Maven项目,并将其作为Maven项目导入到开发环境中。这为后续的开发工作打下了良好的基础。需要注意的是,在进行这些操作时,一定要确保所有必要的环境配置...

    maven项目中的EL表达式问题

    ### Maven项目中的EL表达式问题解析 #### 一、背景介绍 在开发Java Web应用时,经常需要用到Maven作为项目的构建工具。Maven能够帮助我们有效地管理项目的依赖关系,并简化构建过程。但在实际操作过程中,可能会...

    maven多模块项目搭建

    Maven 多模块项目搭建是一个常见的Java开发任务,它允许开发者将大型项目分解成更小、更易管理的模块,每个模块专注于特定的功能或组件。在本教程中,我们将探讨如何使用Eclipse集成开发环境(IDE)和Maven插件来...

    eclipse的maven插件

    总结来说,Eclipse的m2e插件是开发Maven项目不可或缺的工具,通过它,开发者可以在熟悉的Eclipse环境中高效地进行Maven项目的开发、管理和维护,享受到便捷的集成开发体验。安装和使用m2e插件,将极大提升开发者的...

    Maven依赖管理项目构建工具.pdf

    5. Maven工程依赖下载失败错误解决 当Maven无法下载依赖时,可以检查网络、镜像配置、pom.xml的正确性,或者手动下载jar包放到本地仓库。 6. Maven工程Build构建配置 build部分配置了编译、测试、打包等相关设置,...

    Maven仓库apache-maven-3.2.5

    总结来说,Apache Maven 3.2.5是一个强大而灵活的Java项目管理工具,它通过统一的构建生命周期、依赖管理和仓库机制,简化了项目的构建和维护工作。这个版本在性能和稳定性上做了优化,为开发者提供了更高效、更友好...

    Maven项目中验证码的实现

    本文将详细介绍如何在Maven项目中实现验证码功能,并通过引入`jcaptcha`这一流行的验证码解决方案来完成整个过程。 #### Maven环境搭建及依赖管理 在开始之前,需要确保已经正确设置了Maven环境。接下来,在项目的...

    apache-maven-3.3.9

    2. **坐标 (Coordinates)**:每个Maven项目都有三个主要的坐标元素:groupId、artifactId 和 version。这些元素共同唯一标识了一个项目。例如,在"apache-maven-3.3.9"中,groupId可能是"org.apache.maven",...

Global site tag (gtag.js) - Google Analytics