you than running rather provided pom plugin perhaps jre jdk compiler artifactid are java gradle

java - than - maven-compiler-plugin version



¿Cómo establecer el nombre/grupo/versión del proyecto, más la compatibilidad de{source, target} en el mismo archivo? (4)

Tengo la intención de generalizar el uso de Gradle para mis proyectos y me gustaría volver a utilizar el mismo archivo de compilación en todas partes. Desafortunadamente, tengo problemas para tratar de definir las propiedades mencionadas en $ subject en un solo archivo, para facilitar la migración.

Esto es gradle 1.6.

Lo que he intentado, fallando en todos los intentos:

  • gradle.properties : no se puede modificar el nombre (solo lectura, tiene que usar un settings.gradle y anular el nombre del proyecto raíz !); {source,target}Compatibility no tomada en cuenta;
  • settings.gradle : {source,target}Compatibility no se tuvo en cuenta tampoco!

Entonces, ¿cuál es el método correcto para lograr esto? Lo que he intentado hasta ahora en gradle.properties :

group = something name = whatever # cannot do! version = whatever sourceCompatibility = whatever # not taken into account!

Y en settings.gradle :

sourceCompatibility = "whatever"; # not taken into account!

EDITAR Bien, el problema del "nombre" simplemente no puede ser resuelto; por lo demás, he usado otro archivo que aplico en el archivo de compilación. El manejo del "nombre" realmente no es correcto: /

EDITAR 2 Ahora es 2014 y gradle 1.12, y el problema aún no está resuelto ...


Aparentemente esto sería posible en settings.gradle con algo como esto.

rootProject.name = ''someName'' gradle.rootProject { it.sourceCompatibility = ''1.7'' }

Hace poco recibí consejos de que una propiedad del proyecto se puede establecer mediante el uso de un cierre que se llamará más tarde cuando el proyecto esté disponible.


Encontré la solución a un problema similar. Estoy usando Gradle 1.11 (en abril de 2014). El nombre del proyecto se puede cambiar directamente en el archivo settings.gradle la siguiente manera:

rootProject.name=''YourNewName''

Esto se encarga de subir al repositorio (Artifactory w / its plugin para mí) con el artifactId correcto.


Establecí el artefacto baseName para que sea independiente del nombre del proyecto de compilación, lo que me permite lograr lo que desea:

jar { baseName "core" }

Con este conjunto de propiedades, incluso si el nombre de mi proyecto es "foo", cuando gradle install , el artefacto se publica con el nombre core lugar de foo .


gradle.properties:

theGroup=some.group theName=someName theVersion=1.0 theSourceCompatibility=1.6

settings.gradle:

rootProject.name = theName

build.gradle:

apply plugin: "java" group = theGroup version = theVersion sourceCompatibility = theSourceCompatibility