Maven:设定项目编码

今天在DOS下执行mvn compile命令时报错说缺少必要符号,事实上根本就没有缺少,但何以如此呢,为啥eclipse在编译时就没有这问题呢?

原因是编码的问题造成的!

eclipse在编译的使用使用的是UTF-8,因为整个项目设置的是UTF-8格式编。

当在DOS下执行mvn compile命令时,默认使用的是系统的GBK格式编码。

问题解决方案是在pom.xml文件中添加如下代码

<properties>  
    <!-- 文件拷贝时的编码 -->  
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>  
    <!-- 编译时的编码 -->  
    <maven.compiler.encoding>UTF-8</maven.compiler.encoding>  
</properties>

或者添加如下代码:

<plugin>  
    <groupId>org.apache.maven.plugins</groupId>  
    <artifactId>maven-compiler-plugin</artifactId>  
    <version>3.1</version>  
    <configuration>  
        <source>1.5</source>  
        <target>1.5</target>  
        <encoding>UTF-8</encoding><!-- 指定编码格式,否则在DOS下运行mvn compile命令时会出现莫名的错误,因为系统默认使用GBK编码 -->  
    </configuration>  
</plugin>  
<plugin>  
    <groupId>org.apache.maven.plugins</groupId>  
    <artifactId>maven-resources-plugin</artifactId>  
    <version>2.6</version>  
    <configuration>  
        <encoding>UTF-8</encoding><!-- 指定编码格式,否则在DOS下运行mvn命令时当发生文件资源copy时将使用系统默认使用GBK编码 -->  
    </configuration>  
</plugin>  
相关推荐
Yeats_Liao23 分钟前
Spring 框架:配置缓存管理器、注解参数与过期时间
java·spring·缓存
Yeats_Liao23 分钟前
Spring 定时任务:@Scheduled 注解四大参数解析
android·java·spring
码明23 分钟前
SpringBoot整合ssm——图书管理系统
java·spring boot·spring
某风吾起28 分钟前
Linux 消息队列的使用方法
java·linux·运维
xiao-xiang31 分钟前
jenkins-k8s pod方式动态生成slave节点
java·kubernetes·jenkins
网络风云32 分钟前
golang中的包管理-下--详解
开发语言·后端·golang
取址执行42 分钟前
Redis发布订阅
java·redis·bootstrap
小唐C++1 小时前
C++小病毒-1.0勒索
开发语言·c++·vscode·python·算法·c#·编辑器
S-X-S1 小时前
集成Sleuth实现链路追踪
java·开发语言·链路追踪
快乐就好ya1 小时前
xxl-job分布式定时任务
java·分布式·spring cloud·springboot