清理Ubuntu Java编译缓存的常见场景及步骤
Java项目通常使用Maven或Gradle作为构建工具,其编译缓存主要位于项目目录的target(Maven)或build(Gradle)文件夹中,包含编译后的类文件、资源文件等。
pom.xml文件),运行mvn clean命令,该命令会删除target目录及其所有内容。build.gradle文件),运行gradle clean命令,删除build目录及其内容。若需更彻底清理(如强制刷新依赖),可添加--refresh-dependencies选项(Gradle)或使用mvn clean -Dmaven.clean.skip=false(Maven)确保执行清理。Maven和Gradle会将下载的依赖包(如JAR文件)缓存在本地仓库,长期积累会占用大量磁盘空间。
~/.m2/repository(~代表用户主目录),运行rm -rf ~/.m2/repository/*命令删除所有依赖缓存。~/.gradle/caches,运行rm -rf ~/.gradle/caches/*命令删除缓存文件(包括依赖包、编译缓存等)。Java编译过程中生成的临时文件(如.class临时文件、编译中间产物)可能存放在/tmp目录下,可通过以下命令清理:
rm -rf /tmp/*
注意:该命令会删除/tmp下的所有临时文件,请确保无重要数据后再执行。
若使用IntelliJ IDEA、Eclipse等IDE,它们会生成自己的编译缓存(如IntelliJ的out目录、Eclipse的bin目录)。
File > Invalidate Caches / Restart,选择Invalidate and Restart清理缓存并重启IDE。Project > Clean,选择需要清理的项目,或手动删除项目目录下的bin文件夹。sudo systemctl stop your-java-service.service),避免缓存文件被占用导致删除失败。pom.xml中配置<skip>true</skip>跳过测试编译;对于Gradle,可使用--no-build-cache禁用构建缓存,减少缓存生成。