2012-06-19 51 views
2

我希望讓Maven編譯我用-Dfile.encoding = UTF8標誌項目,通過將其設定在pom.xml,父項目。如何設置編譯器編碼?

這是沒有這樣做:

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

所以我得到這個錯誤時,Maven的編譯:

javac option: M:\Parent\persistence\target\generated-sources\apt 
...\Database.java:90: error: unmappable character for encoding Cp1252 
    * Semantics of SQL INSERT OR IGNOREÃ? 
+0

我們可以看到Database.java中的犯罪行嗎?只是爲了完整性? –

+0

它看起來Database.java是一個生成的文件,可能是你錯過了在插件配置正確的?它生成了Database.java文件... – khmarbaise

回答

2

根據該文檔,你有什麼看起來是正確的:

http://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html

因爲這是失敗,嘗試顯式地設置:

  <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>2.3.2</version> 
       <configuration> 
        <source>${java.version}</source> 
        <target>${java.version}</target> 
        <encoding>${project.build.sourceEncoding}</encoding> 
       </configuration> 
      </plugin> 
+1

查看文檔:默認值是:$ {project.build.sourceEncoding}。 – khmarbaise

+0

即使這樣做(甚至 UTF-8做求解帶的問題。我只將父POM。也許如果我在這個項目改變POM它會奏效。 – simpatico