Maven 编译使用 rt.jar

简介: 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/catoop/article/details/63251628 项目在使用mvn clean package 打包的时候出现 com.sun.image.codec.jpeg.JPEGCodec 是 Sun 的专用 API 这样的编译错误提示时,我们需要在maven编译插件中指定参数 rt.jar 文件。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/catoop/article/details/63251628

项目在使用mvn clean package 打包的时候出现 com.sun.image.codec.jpeg.JPEGCodec 是 Sun 的专用 API 这样的编译错误提示时,我们需要在maven编译插件中指定参数 rt.jar 文件。因为 rt.jar 是jre 中自带的 jar 包,所以才使用编译参数的方式使用。

pom.xml 的代码片段如下:

<build>

    <plugins>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.5</version>
            <configuration>
                <source>${jdk.version}</source>
                <target>${jdk.version}</target>
                <encoding>UTF-8</encoding>
                <compilerArguments>
                    <verbose />
                    <bootclasspath>${JAVA_HOME}/jre/lib/rt.jar${path.separator}${JAVA_HOME}/jre/lib/jce.jar</bootclasspath>
                </compilerArguments>    
            </configuration>
        </plugin>

        <!-- 你项目中需要的其他插件本例忽略 -->

    </plugins>
</build>

主要我上面的 bootclasspath 参数指定了2个 jar 文件。
第一是我项目中需要这2个文件编译。
第二我是为了说明另外一个问题:就是当我们需要指定多个 jar 的时候,中间的分隔符,要使用maven内置变量 ${path.separator} 来指定。因为在windows下,这个分隔符应该是“分号”,而在Linux 下这个分隔符必须是“冒号”,无论我们写死哪一种都是不兼容的,所以maven为我们提供了这样的变量,可以自动根据操作系统来使用对应的分隔符。

所以maven分隔符变量 ${path.separator} 我们可能在其他配置的时候也会使用到,大家回想一下在Linux下和在Windows下配置环境变量时的分隔符就知道了。

目录
相关文章
|
3月前
|
Java Maven 数据安全/隐私保护
maven发布jar包到私服以及从私服下载jar包的操作
maven发布jar包到私服以及从私服下载jar包的操作
|
4月前
|
Java Maven
maven jar 包冲突处理
maven jar 包冲突处理
32 0
|
4月前
|
存储 Java Maven
IDEA常用插件之类Jar包搜索Maven Search
IDEA常用插件之类Jar包搜索Maven Search
133 0
|
5月前
|
XML SQL Java
Maven的三种打包方式(jar、shade、assembly)
Maven的三种打包方式(jar、shade、assembly)
445 0
|
4月前
|
Java Maven 数据安全/隐私保护
Nexus【应用 01】上传jar包到私有Maven仓库的两种方法:手动 Upload 和 mvn deploy 命令(配置+操作流程)
Nexus【应用 01】上传jar包到私有Maven仓库的两种方法:手动 Upload 和 mvn deploy 命令(配置+操作流程)
364 0
|
29天前
|
Java Maven
maven项目导出可执行jar
maven项目导出可执行jar
29 0
|
30天前
|
Java Maven
maven手动安装jar
maven手动安装jar
21 2
|
2月前
|
存储 Java Maven
【JavaEE进阶】 Maven jar 包下载失败问题的解决方法
【JavaEE进阶】 Maven jar 包下载失败问题的解决方法
|
3月前
|
IDE Java Maven
解决 idea maven项目启动项目不编译target 文件问题
解决 idea maven项目启动项目不编译target 文件问题
110 2
|
4月前
|
Java Maven
maven jar排冲突
maven jar排冲突
94 0