Cela ne fonctionnait pas avec Hadoop lorsque je déplaçais mon ancien projet vers Gradle, donc une note sur la façon de le résoudre
dependencies{
compile group: 'org.apache.hadoop', name: 'hadoop-core', version: '0.20.2-cdh3u6'
}
jar {
manifest {
attributes(
'Main-Class': 'path.to.Main',
'Class-Path' : '.'
)
}
exclude 'META-INF/*.RSA', 'META-INF/*.SF','META-INF/*.DSA'
from configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
}
Comme un pot gradle
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':jar'.
> Could not expand ZIP '...\.gradle\caches\modules-2\files-2.1\com.cloudera.cdh\hadoop-ant\0.20.2-cdh3u6\...\hadoop-ant-0.20.2-cdh3u6.pom'.
J'ai eu une erreur disant que je ne pouvais pas faire de pot.
dependencies{
compile (group: 'org.apache.hadoop', name: 'hadoop-core', version: '0.20.2-cdh3u6'){
exclude group: 'com.cloudera.cdh', module: 'hadoop-ant'
}
compile group: 'com.cloudera.cdh', name: 'hadoop-ant', version: '0.20.2-cdh3u6'
}
Ensuite, j'ai pu construire.
Si vous regardez hadoop-core-0.20.2-cdh3u6.pom
<dependency>
<groupId>com.cloudera.cdh</groupId>
<artifactId>hadoop-ant</artifactId>
<type>pom</type>
</dependency>
Et pom est spécifié dans l'élément type. En regardant le comportement, Gradle semble décompresser même si l'élément type est pom, il semble donc qu'une erreur se produira là-bas. Par conséquent, hadoop-ant peut être construit correctement en excluant hadoop-core de hadoop-core afin que la dépendance ne puisse pas être résolue et en prenant un autre hadoop-ant. Il semble.
Le problème a été résolu pour le moment, mais si quelqu'un connaît la cause exacte ou la meilleure solution, merci de me le faire savoir. M (_ _) m
Gradle confirmé dans l'environnement d'exploitation suivant
------------------------------------------------------------
Gradle 2.14.1
------------------------------------------------------------
Build time: 2016-07-18 06:38:37 UTC
Revision: d9e2113d9fb05a5caabba61798bdb8dfdca83719
Groovy: 2.4.4
Ant: Apache Ant(TM) version 1.9.6 compiled on June 29 2015
JVM: 1.8.0_77 (Oracle Corporation 25.77-b03)
OS: Windows 7 6.1 amd64
------------------------------------------------------------
Gradle 2.0
------------------------------------------------------------
Build time: 2014-07-01 07:45:34 UTC
Build number: none
Revision: b6ead6fa452dfdadec484059191eb641d817226c
Groovy: 2.3.3
Ant: Apache Ant(TM) version 1.9.3 compiled on December 23 2013
JVM: 1.8.0_77 (Oracle Corporation 25.77-b03)
OS: Windows 7 6.1 amd64