Change default encoding to UTF-8

I have a project in java with maven creator. Now I need to support UTF-8 encoding. I don’t know why the default encoding ( Charset.defaultCharset()) is always. US-ASCII. I changed the configuration of Pom.xml to UTF-8 (for encoding) and set the -Dfile.encoding=UTF-8 output to always " ?" for Unicode characters (for example, "Việt Nam"=> Vi?t Nam).

I tested it on Ant buidler, it is correct as UTF-8 characters.

This is my Pom.xml

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.3.2</version>
            <configuration>
                <source>1.7</source>
                <target>1.7</target>
                <outputEncoding>UTF-8</outputEncoding>
                <argLine>-Dfile.encoding=UTF-8</argLine>
                <encoding>${project.build.sourceEncoding}</encoding>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <version>1.2.1</version>
            <executions>
                <execution>
                    <id>cucumber</id>
                    <phase>test</phase>
                    <configuration>
                        <executable>src/scripts/cucumber.sh</executable>
                        <commandlineArgs>${host} ${port} ${profile}</commandlineArgs>
                    </configuration>
                    <goals>
                        <goal>exec</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>

thanks

Update My System

NetBeans 7.3.1 JDK 1.7 Mac OS 10.9.1

Update I changed the IDE to Intelij IDEA and the problem disappeared, but I do not know why.

+4
3

<build>

<project xmlns="...">
... 
<properties>
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  <project.resources.sourceEncoding>UTF-8</project.resources.sourceEncoding>
</properties>
+2

, , , , maven , , ?

, -Dfile.encoding=UTF-8 JVM, , JVM, maven . , , , maven javac UTF-8.

. .

, - martin

+1

. html jsp.

<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

<html lang="en">
...
+1

Source: https://habr.com/ru/post/1528027/


All Articles