在idea中编译时,出现以下错误
Malformed \uxxxx encoding.
经过各种资料和分析后,是因为依赖的jar包有下载不完整导致的。解决办法是,把这些本地maven仓库中下载有问题的jar包删除,重新打包项目即可(idea中就是reload)。
找到并删除这些有问题的jar包的方法,我写了一个java类来操作(依赖commons-io包),具体如下:
package com.tmp; import org.apache.commons.io.DirectoryWalker; import org.apache.commons.io.FileUtils; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.Collection; import java.util.Enumeration; import java.util.List; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; public class FindInvalidJarAndDel extends DirectoryWalker<String> { public static void main(String[] args) throws IOException { // 查找本地maven仓库 File startDir = new File("C:\\Users\\beta\\.m2\\repository"); FindInvalidJarAndDel finder = new FindInvalidJarAndDel(); List<String> finded = new ArrayList<>(); finder.walk(startDir, finded); if (finded.size() > 0) { //删除对应的文件 for (String f : finded) { System.out.println(f); try { FileUtils.forceDelete(new File(f));//删除整个文件夹 } catch (IOException e) { e.printStackTrace(); } } } } protected void handleFile(File file, int depth, Collection<String> results) throws IOException { if (results.contains(file.getParent())) { return; } if (file.getName().endsWith(".lastUpdated")||file.getName().toLowerCase().endsWith("resolver-status.properties")) { results.add(file.getParent()); return; } if (file.getName().endsWith(".jar")) { //尝试解压一下,如果不能解压,则说明jar包有问题 try { ZipFile zip = new ZipFile(file); Enumeration zipEntries = zip.entries(); while (zipEntries.hasMoreElements()) { ZipEntry entry = (ZipEntry) zipEntries.nextElement(); entry.getName(); entry.getSize(); } } catch (Exception e) { results.add(file.getParent()); return; } } } }
相关推荐
通过maven项目中的pom文件进行编译jar包。资源包包括maven3 和编译所需工具。
Maven多模块项目编译速度慢,下面我们来学习下优化的方法。 mvn clean package -T 4C -Dmaven.test.skip=true -Dmaven.compile.fork=true -T 4C 代表本机4个CPU内核都参与编译工程, -Dmaven.test.skip=true 代表...
之前用maven开发,每修改一次代码都需要重新编译发布一次,于是后面我用了jrebel实现热编译,这样开发就方便了很多,后面开发都只需要编译一次,有代码或者页面改动,都会自动去编译,不用maven再重新编译发布一次,...
解决maven项目创建过慢的问题.txt
maven 2.0 已编译 直接解压使用。
不习惯于maven项目开发,想使用eclipse的普通web项目。想借鉴别人的maven项目,但是自己使用的却不熟悉maven的原理等等,但是需要懂一点maven的目录架构。
jenkins和maven配置自动编译打包和发布java项目
Maven_2.0编译、测试、部署、运行,Maven_2.0编译、测试、部署、运行
Maven是一个采用纯Java编写的开源项目管理工具。Maven是很重要的,我们可以对我们所编写的代码进行预编译。
java创建一个简单的Maven项目java创建一个简单的Maven项目java创建一个简单的Maven项目java创建一个简单的Maven项目java创建一个简单的Maven项目java创建一个简单的Maven项目java创建一个简单的Maven项目java创建一...
maven项目搭建可能遇到的问题,挺实用的。
maven 配置简介及项目创建,包括pom.xml详细介绍,eclipse平台maven创建项目编译等
Eclipse新建和部署maven项目,每一步都有详细的截图
sypro_maven项目,ssh_maven项目
maven项目构建文档maven项目构建文档maven项目构建文档
eclipse 中编译、运行都正常,但是如果用maven的打包命令 mvn clean package 进行打包时会发现有类型错误
更新Maven项目遇到了问题 无法计算建设计划:插件org。Apache Maven。插件:有资源插件 更新Maven配置错误,提供解决错误的资源
空白的,经过单元测试的,mavenWeb项目
解决maven项目找不到tools-1.8.0.jar的问题,缺失tools-1.8.0.jar包
mondrian默认采用ant build,这里的war项目采用maven编译,可以直接在eclipse里运行