Rubin's Blog

  • 首页
  • 关于作者
  • 隐私政策
享受恬静与美好~~~
分享生活的点点滴滴~~~
  1. 首页
  2. 问题记录
  3. 正文

问题记录之设置普通maven工程的编译级别

2021年 5月 1日 773点热度 0人点赞 0条评论

问题

我们在创建一个普通的Maven工程的时候,往往会忽略设置编译界别以及JDK的版本,从而导致依赖项编译的时候导致编译级别过低的编译失败。因为IDEA默认的JDK编译级别是1.5.

解决方案

全局配置

在Maven的settings.xml的<profiles>中加入如下配置:

<profile>  
    <id>jdk18</id>  
    <activation>  
        <activeByDefault>true</activeByDefault>  
        <jdk>1.8</jdk>  
    </activation>  
    <properties>  
        <maven.compiler.source>1.8</maven.compiler.source>  
        <maven.compiler.target>1.8</maven.compiler.target>  
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>  
    </properties>   
</profile>

这种配置的优点是配置一次,以后的所有项目均会按照次编译级别来编译。

局部配置:配置属性

在工程的pom.xml中配置如下属性:

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
<java.version>1.8</java.version>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>

此项目会按照此种编译级别来编译。

局部配置:配置插件

在工程的pom.xml中配置如下插件配置:

<build>
      <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>utf-8</encoding>
                </configuration>
            </plugin>
        </plugins>
</build>

此项目会按照此种编译级别来编译。

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 问题记录
最后更新:2022年 6月 9日

RubinChu

一个快乐的小逗比~~~

打赏 点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复
文章目录
  • 问题
  • 解决方案
    • 全局配置
    • 局部配置:配置属性
    • 局部配置:配置插件
最新 热点 随机
最新 热点 随机
问题记录之Chrome设置屏蔽Https禁止调用Http行为 问题记录之Mac设置软链接 问题记录之JDK8连接MySQL数据库失败 面试系列之自我介绍 面试总结 算法思维
算法之二分查找 RocketMQ之架构与实战 SpringBoot之自动装配原理 Neo4j之基础介绍 RocketMQ之集群与运维 MyBatis之基本应用

COPYRIGHT © 2021 rubinchu.com. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

京ICP备19039146号-1