web-dev-qa-db-fra.com

Afficher le texte UTF-8 correctement dans Gradle

J'ai une tâche:

task info<<{
    println "Gradle — система автоматической сборки, построенная на принципах Apache Ant и Apache Maven, но предоставляющая DSL на языке Groovy вместо традиционной XML-образной формы представления конфигурации проекта."
}

quand j'utilise la commande

gradle info -Dfile.encoding=UTF-8

Le texte n'est pas affiché correctement. Comment le réparer? Merci.

14
Xelian

La propriété système file.encoding doit être définie correctement au démarrage de la machine virtuelle Java exécutant la construction de Gradle (par exemple, le démon Gradle). Une façon d'y parvenir est d'utiliser export GRADLE_OPTS="-Dfile.encoding=utf-8". Une autre méthode qui pourrait fonctionner consiste à ajouter systemProp.file.encoding=utf-8 à gradle.properties. Bien entendu, cela suppose que les fichiers de script de construction utilisent réellement le codage utf-8. Pour voir quel est le codage par défaut de votre plate-forme (et donc de Gradle), imprimez la valeur de la propriété système dans un script de construction.

14
Peter Niederwieser

J'utilise les paramètres suivants dans build.gradle et son travail me convient:

compileJava.options.encoding = 'UTF-8'

tasks.withType(JavaCompile) {
    options.encoding = 'UTF-8'
}
35
Tapa Save

Dans gradle.properties

org.gradle.jvmargs='-Dfile.encoding=UTF-8'
6
javajon

Pour mes seuls travaux avec cela dans build.gradle:

apply plugin: 'Java'
tasks.withType(JavaCompile) {
    options.encoding = 'UTF-8'
}
repositories {
    mavenCentral()
}
....
test {
    systemProperty "file.encoding", "utf-8"
}
1
Fernando Sanchiz