2013-03-13 61 views
0

我有一个maven依赖jar的在类的静态块中包含法文字符。依赖jar中的法文字符编码失败

现在,当对这个类进行调用时,我得到了NoClassDefFoundError。在eclipse中导入代码后,我发现法文字符正在创建编译问题,这就是为什么我的类没有被加载。

有没有什么办法可以在Maven中为依赖jar指定字符编码支持?

我已经尝试了-Dfile.encoding = UTF-8选项,但它不起作用。

回答

1

你有安装到Eclipse中m2e插件?如果是,则设置this properties到您的POM文件:

<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 
</properties> 

最后右击该项目,并做Maven->更新项目,这应该告诉Eclipse要使用UTF-8编码为您的项目。

+0

我试过这个,但仍然面临这个问题。这里要提到的一件事是,jar是在Java 1.5环境中构建的,使用它的maven项目在Java 1.6环境中。这可能是一个问题吗?因为该jar已经建立,那么为什么它应该给编译问题作为依赖? – 2013-03-14 09:28:30

+0

也可以使用Maven [编译器插件](http://maven.apache.org/plugins/maven-compiler-plugin/examples/set-compiler-source-and-target.html)来指定您的java版本。如上所述更新项目配置之后。 – 2013-03-14 09:43:36