`
flashdream8
  • 浏览: 678588 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Maven使用FAQ:与Maven版本和字符集编码有关的编译错误处理

阅读更多

在Maven3.0下创建了一个POM文件,可对项目进行正常的构建,但版本改为Maven2.2.1时却出现类似如下的编译错误: 
[ERROR] BUILD FAILURE 
[INFO] ------------------------------------------------------------------------ 
[INFO] Compilation failure 

D:\workspace\rbdp\src\main\java\com\util\Test.java:[20,49] 需要 '}' 

D:\workspace\rbdp\src\main\java\com\util\Test.java:[20,50] 非法字符: \65533 

D:\workspace\rbdp\src\main\java\com\util\Test.java:[20,51] 需要 <标识符> 

D:\workspace\rbdp\src\main\java\com\util\Test.java:[20,52] 需要 ';' 
… 

该错误显然跟字符集编码有关,但POM文件中已指定了编码为UTF-8,在POM文件中包含如下内容: 
? <properties> 
????? <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
? </properties>

经反复试验和分析,发现这跟Maven版本有关。Maven3和Maven2版本变化不小,不完全兼容。

?

具体解决方法说明如下:??
?在确认POM文件中已有上述<project.build.sourceEncoding>内容的前提下,增加以下内容(如已包含maven-compiler-plugin的相关内容,则只需在相应位置增加红色字体部分内容):

? <build>?
??? <plugins> 
????? <plugin> 
??????? <groupId>org.apache.maven.plugins</groupId> 
??????? <artifactId>maven-compiler-plugin</artifactId> 
??????? <configuration> 
? <source>1.5</source> 
? <target>1.5</target> 
<encoding>UTF-8</encoding> 
??????? </configuration> 
????? </plugin> 
??? </plugins>????
? </build>

?

? 注意: 
??? 1、同时指定<project.build.sourceEncoding>属性和<encoding>方式可适用于Maven2和Maven3。

??? 2、在Maven3中可以只增加<project.build.sourceEncoding>属性而不指定<encoding>,即能解决编译问题。如果只指定<encoding>编译不会出错,但会出现以下警告。建议两者都进行指定或只指定前者。警告信息如下:
[WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!

??? 3、在Maven2中,如果只指定<project.build.sourceEncoding>属性则编译出错;如果只指定<encoding>编译不会出错,但会出现与第2点类似的警告,建议两者都进行指定,以免对运行产生影响。

 

分享到:
评论

相关推荐

    Maven更新失败,Cannot resolve plugin org.apache.maven.plugins:maven-compiler-plugin:3.1

    Maven更新问题 今天Maven在更新的时候发现一直更新不成功,总结下解决方法。 在apache-maven-3.5.2/conf/setting.xml中加入以下配置即可解决 alimaven aliyun maven ...

    Maven使用tomcat8-maven-plugin插件.docx

    Maven 使用 tomcat8-maven-plugin 插件 Maven 是一个流行的构建自动化工具,它可以帮助开发者自动完成项目的编译、测试、打包、部署等任务。 Tomcat 是一个流行的 Web 服务器,Maven 提供了一个插件 tomcat8-maven-...

    Jenkins编译报错Failed to execute goal org.apache.maven.plugins_maven-clean-plugin

    Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project

    Maven的安装包:apache-maven-3.6.1-zip

    **Apache Maven 3.6.1 安装与使用指南** Apache Maven 是一个强大的Java项目管理工具,它基于项目对象模型(Project Object Model, POM)的概念,能够自动化构建、依赖管理和项目信息管理。Maven 的核心理念是通过...

    Maven exec-maven-plugin:执行外部命令的实践指南

    本文详细介绍了exec-maven-plugin的基本概念、配置方法、执行简单和系统脚本、捕获命令输出、条件执行、并发执行、使用环境变量、错误处理、高级配置、使用案例以及局限性。通过这些知识点,读者可以更加自信地在...

    Maven3实战笔记04Maven的生命周期和插件

    - **deploy**:将最终版本的包复制到远程仓库供其他开发人员和项目使用。 #### Maven插件 Maven插件是用来执行具体任务的工具,每个插件可以包含多个目标(Goal),每个目标对应着生命周期中的某个阶段。插件通常...

    maven历史版本下载

    4. **错误修复**:此版本修复了多个已知问题,提升了Maven的稳定性和可靠性。 要下载Maven的历史版本,可以访问Apache Maven的官方网站(https://maven.apache.org/download.cgi)。在页面中,你可以找到一个下拉...

    解锁Maven的潜能:使用maven-help-plugin获取帮助信息

    Maven是一个项目管理和构建自动化工具,主要服务于基于Java的软件项目。它是由Apache软件基金会提供的一个开源工具,使用一种名为Project Object Model (POM) 的XML文件来描述项目的构建过程、依赖关系和其他配置...

    Maven全攻略:下载、安装、配置与使用一应俱全.zip

    1. Maven插件与工具:介绍一些常用的Maven插件和工具,如Maven Helper、Maven Dependency Plugin等,它们可以帮助开发者更加高效地管理项目依赖和构建流程。 2. Maven实战教程:提供一系列Maven实战教程,包括如何...

    最新Maven版本:apache-maven-3.6.0

    开发者只需在POM.xml中声明依赖,Maven会处理版本冲突和下载过程。 2. **插件系统**:Maven拥有丰富的插件生态系统,允许扩展其功能,例如生成Javadoc、执行单元测试、创建源码jar等。在3.6.0版本中,可能包含对...

    Maven兼容jdk1.7版本

    在软件开发过程中,构建工具如Maven与开发环境的兼容性至关重要,因为它直接影响到项目的构建、编译和测试流程。 **Maven** 是一个流行的Java项目管理和综合工具,它帮助开发者管理项目依赖、构建流程、生成文档等...

    Maven报错: Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.0.2:resources

    idea创建Maven项目时,报错显示Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.0.2:resources,并且Maven插件内看不到 mybatis-generator。如下图: 折腾了好久发现配置放错地方了,...

    Maven安装包(版本:3.5.3)

    2. **更稳定的仓库管理**: 在这个版本中,Maven改进了对远程仓库的错误处理,增强了仓库的可靠性和稳定性。 3. **更好的日志输出**: Maven 3.5.3改进了日志输出,使得开发者更容易理解和诊断构建问题。 4. **增强...

    maven 配置文件:settings.xml详解版,只需修改本地仓库路径即可使用

    使用eclipse整合maven时所需要使用的配置文件;只需修改文件中的本地仓库路径即可完成整合,java初学者必选。

    Maven安装指南:详细步骤与环境配置教程

    - **JDK版本兼容性**:确保JDK版本与Maven支持的版本相匹配。 - **环境变量设置**:检查`PATH`和`JAVA_HOME`环境变量是否正确设置。 - **本地仓库路径**:根据需要配置Maven的本地仓库路径,以避免空间不足问题。 ...

    maven 最新版 3.6.0 版本

    8. 对多模块项目的优化:在处理大型的多模块项目时,Maven 3.6.0表现得更为出色,减少了不必要的编译和测试过程。 9. 更好的远程仓库交互:优化了与远程Maven仓库的通信,提高了下载速度,尤其是在网络环境不佳的...

    Maven3.5~3.6.3各版本下载

    Maven版本下载指南 Maven是一款基于Java的项目管理和构建工具,由 Apache Software Foundation 开发和维护。...Maven 3.5~3.6.3各版本都有其特点和改进,用户可以根据需要选择合适的版本进行下载和使用。

    maven版本:apache-maven-3.5.4-bin

    在这个"apache-maven-3.5.4-bin"压缩包中,包含了Maven 3.5.4版本的所有组件和文件。 Maven的核心概念有三个主要部分:项目对象模型(Project Object Model,POM)、依赖管理和构建生命周期。POM是一个XML文件,...

    maven3.x全版本.zip

    6. **Maven 3.6.6**: 最新的 Maven 3.6.6 版本继续强化了性能和用户体验,提供了更好的日志记录和错误处理,支持更多的第三方存储库协议,同时改进了与 Git 等版本控制系统集成的能力。 ** Maven 的核心概念 ** 1....

    maven使用文档,maven使用文档

    Maven 提供了一套完善的依赖管理系统,能够自动解析项目的依赖,并且处理它们之间的版本冲突。 - **特性三:插件机制** Maven 通过插件来实现各种功能,例如编译源代码、运行测试、生成项目报告等。这使得 Maven ...

Global site tag (gtag.js) - Google Analytics