Estoy trabajando con un proyecto de código abierto que se construye con gradle. Me gustaría generar un archivo (project) -sources.jar que pueda cargar en mi IDE (IntelliJ IDEA) y depurar a través del proyecto. Sé cómo cargar el archivo si puedo generarlo.
He revisado las tareas de gradle disponibles para el proyecto y no hay una que genere un archivo jar de fuentes.
¿Cuál es la forma más fácil de generar un archivo jar de fuentes para este proyecto?
Agregar la fuente en el archivo jar que contiene los archivos de clase compilados también estaría bien.
Si estás usando Android:
desde aqui
fuente
Si desea agregar las fuentes al archivo JAR de clases compiladas , que también dijo que sería aceptable, puede hacerlo con bastante facilidad. Simplemente agregue lo siguiente a su archivo de compilación. Puede ver que, en teoría, es bastante como la solución para poner las fuentes en un JAR separado:
La diferencia es que lo está agregando al archivo JAR principal diciendo "jar" en lugar de sourcesJar.
fuente
Solución a partir de Gradle 6.0
Suponiendo que usa el complemento
java
/java-library
con Gradle 6.0 o posterior, puede obtener unasourcesJar
tarea usando la siguiente configuración:Si además usa el complemento
maven-publish
/ivy-publish
(recomendado hoy en día), esto también publicará un*-sources.jar
artefacto junto con su publicación principal de Java.Ver también los documentos de Gradle .
fuente
Esto debería funcionar
fuente
assemble.dependsOn
parte, que hace que esta tarea se ejecute automáticamente.El equivalente de Kotlin DSL sería:
fuente
Project."java"
resuelveJavaPluginExtension
lo que no ofrece ningunasourceSets
odocsDir
propiedades.from(sourceSets["main"].allJava)
from(javadoc)
yfrom(sourceSets["main"].allSource)
Cuando usas:
java
ymaven-publish
complementoshttps://docs.gradle.org/current/dsl/org.gradle.api.publish.maven.MavenPublication.html
fuente