Bug#895886: testng: jcommander classes not found
Le mar. 17 avr. 2018 à 14:19, 殷啟聰 | Kai-Chung Yan a écrit : > Yeah, I misunderstood you too. > > Strange, if `htsjdk` does not configure `jcommander` in `maven.rules`, > `1.x` should have been replaced by `debian` on the fly. Maybe > `gradle-debian-helper` ignores test classpath? > I tried to add manually jcommander in htsjdk as a compile/testcompile/testruntime dependency, but was not added anyway in test classpath, certainly because it was found, in a way, as an already defined dep in testng. But updating /usr/share/maven-repo/org/testng/testng/debian/testng-debian.pom to specify debian in version of jcommander instead of 1.x fix the problem for me
Bug#895886: testng: jcommander classes not found
Yeah, I misunderstood you too. Strange, if `htsjdk` does not configure `jcommander` in `maven.rules`, `1.x` should have been replaced by `debian` on the fly. Maybe `gradle-debian-helper` ignores test classpath? signature.asc Description: OpenPGP digital signature
Bug#895886: testng: jcommander classes not found
Le mar. 17 avr. 2018 à 14:06, 殷啟聰 | Kai-Chung Yan a écrit : > By `debian/maven.rules` I mean [1]. It's at line 3. This file configures > Gradle as well. > oh ok, you meant in testng, not in our package... I locally updated pom to make it work, but means that testng needs to be updated by maintainers > > Gradle understands the relocations, but it won't add it to the build > classpath, that's why it fails. > > [1]: https://sources.debian.org/src/testng/6.9.12-2/debian/maven.rules > >
Bug#895886: testng: jcommander classes not found
By `debian/maven.rules` I mean [1]. It's at line 3. This file configures Gradle as well. Gradle understands the relocations, but it won't add it to the build classpath, that's why it fails. [1]: https://sources.debian.org/src/testng/6.9.12-2/debian/maven.rules signature.asc Description: OpenPGP digital signature
Bug#895886: testng: jcommander classes not found
Le mar. 17 avr. 2018 à 13:37, 殷啟聰 | Kai-Chung Yan a écrit : > Control: tags -1 confirmed > > I relocated `jcommander` from version `1.x` to `debian`, but unfortunately > Gradle does not recognize Maven artifact relocations. > > To fix this, simply remove the line about `jcommander` in > `debian/maven.rules`. > it is not defined in debian/maven.rules, only testng. It is a gradle build , and a dependency of testng so "automatically" added to the test step classpath. Olivier > > Hmm, now I have no idea why it used `1.x` in the first place. (I am not > the original maintainer) >
Bug#895886: testng: jcommander classes not found
Control: tags -1 |confirmed I relocated `jcommander` from version `1.x` to `debian`, but unfortunately Gradle does not recognize Maven artifact relocations. To fix this, simply remove the line about `jcommander` in `debian/maven.rules`. Hmm, now I have no idea why it used `1.x` in the first place. (I am not the original maintainer) | signature.asc Description: OpenPGP digital signature
Bug#895886: testng: jcommander classes not found
Package: testng Version: 6.9.12-2 Severity: important Dear Maintainer, while trying to use testng to update package htsjdk (using gradle), I face errors about jcommander not being found when running tests Task :compileTestJava actions class loader hash: 1526b3b109d06b230b32697697c7e0ca Passing through org.scala-lang:scala-library:jar:2.11.x Passing through com.google.jimfs:jimfs:jar:debian Passing through com.google.jimfs:jimfs-parent:jar:debian Passing through org.testng:testng:jar:debian Passing through com.google.guava:guava:jar:debian Passing through com.google.guava:guava-parent:jar:debian Passing through org.beanshell:bsh:jar:debian Passing through com.beust:jcommander:jar:1.x POM relocation to an other version number is not fully supported in Gradle : com.beust:jcommander:1.x relocated to com.beust:jcommander:debian. Please update your dependency to directly use the correct version 'com.beust:jcommander:debian'. Resolution will only pick dependencies of the relocated element. Artifacts and other metadata will be ignored. ... Caused by: java.lang.NoClassDefFoundError: com/beust/jcommander/ParameterException at org.gradle.api.internal.tasks.testing.testng.TestNGTestClassProcessor.runTests(TestNGTestClassProcessor.java:95) at org.gradle.api.internal.tasks.testing.testng.TestNGTestClassProcessor.stop(TestNGTestClassProcessor.java:88) at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:61) I see in gradle logs that jcommander is not added in the classpath, so there may be a dependency management issue with jcommander. It seems there are resolution issues I did not face in the past. Don't know if issue is testng or jcommander related as I see jcommander was updated not so long ago. -- System Information: Debian Release: 9.0 APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 4.4.0-116-generic (SMP w/4 CPU cores) Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968), LANGUAGE=C (charmap=ANSI_X3.4-1968) Shell: /bin/sh linked to /usr/bin/dash Init: unable to detect Versions of packages testng depends on: ii libbsh-java 2.0b4-19 ii libjcommander-java 1.71-1 Versions of packages testng recommends: ii ant 1.10.3-1 ii junit4 4.12-6 ii libyaml-snake-java 1.20-1 testng suggests no packages. -- no debconf information