clean 后package不成功

本文介绍了一个使用Maven构建项目时遇到的问题:在执行mvn clean package命令时出现了编译失败的情况,错误提示涉及到了sun.misc.BASE64Encoder和sun.misc.BASE64Decoder这两个类的警告信息。文中详细描述了问题的现象,并给出了一个简单的解决方案。

项目用maven构建,但在package时出现问题。

 

我使用命令:mvn -Dmaven.test.skip=true clean package,然后就出现

 

[INFO] ------------------------------------------------------------------------

[ERROR] BUILD FAILURE

[INFO] ------------------------------------------------------------------------

[INFO] Compilation failure

 

D:\workspace-proj\rome\web\src\main\java\com\jim\rome\web\module\

screen\taobaoassistant\MD5.java:[6,15] 警告:sun.misc.BASE64Encoder 是 Sun 的专

用 API,可能会在未来版本中删除

 

D:\workspace-proj\rome\web\src\main\java\com\jim\rome\web\module\

screen\shopns\ShopnsTrustLogin.java:[14,15] 警告:sun.misc.BASE64Decoder 是 Sun

的专用 API,可能会在未来版本中删除

 

这时候,再 mvn -Dmaven.test.skip package就OK了。

 

总结一下,就是项目先clean一把,再package,出错。package出错后再次package就OK。这是什么原因啊??


Maven 命令 `mvn -T 8 clean package` 是一个组合命令,下面对其各部分含义、作用及使用场景进行详细解释: ### 命令各部分含义 - **`mvn`**:这是执行 Maven 命令的基础指令,用于调用 Maven 构建工具来执行各种操作。 - **`-T 8`**:`-T` 是 Maven 用于指定线程数的参数,`8` 表示使用 8 个线程来并行执行 Maven 任务。并行执行可以显著加快构建过程,尤其是在处理大型项目或多模块项目时,多个模块可以同时进行编译和打包等操作。 - **`clean`**:`clean` 是 Maven 官方提供的插件命令,它会删除 `target/` 目录,该目录是 Maven 存放编译产物的地方。此操作确保每次构建从零开始,避免旧文件对新构建产生干扰,相当于在重新编译前执行“清空垃圾桶”的操作 [^4]。 - **`package`**:`package` 同样是 Maven 官方插件命令,属于打包命令。它会把项目中的 `class` 文件和资源文件都放到一个压缩文件中,压缩文件的格式在 `pom.xml` 中可以进行配置,默认是 `jar` 格式,对于 Web 项目一般配置为 `war` 格式。在执行 `mvn package` 命令时,会依次执行 `mvn compile`、`mvn test-compile`、`mvn test` 等命令,如果 `mvn test` 测试未通过,则打包过程成功 [^3]。 ### 命令作用 该命令的主要作用是清理项目的旧编译产物,然后重新编译项目并进行打包。使用 8 个线程并行执行任务可以提高构建效率,尤其适用于大型项目或多模块项目,能够充分利用多核处理器的性能,减少构建时间。 ### 使用场景 - **大型项目构建**:对于包含大量模块和代码的大型项目,使用并行构建可以显著加快构建速度,提高开发效率。 - **持续集成环境**:在持续集成(CI)环境中,如 Jenkins、GitLab CI 等,每次代码提交后都需要进行构建和测试,使用并行构建可以减少构建所需的时间,更快地得到构建结果。 - **开发过程中的频繁构建**:在开发过程中,开发人员可能需要频繁地进行构建和测试,使用并行构建可以减少等待时间,提高开发效率。 ### 示例代码 假设在一个包含多个子项目Maven 工程中使用该命令,命令使用如下: ```bash mvn -T 8 clean package ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值