[Debian-med-packaging] Help to detect java classes in drop-seq (covid-19 relevant) needed
Felix Natter
fnatter at gmx.net
Thu May 21 20:36:34 BST 2020
Andreas Tille <andreas at an3as.eu> writes:
> Hi,
hello Andreas,
> On Wed, May 20, 2020 at 10:07:48PM +0200, Andreas Tille wrote:
>>
>> Thanks. This was pretty helpful. Now I need to package the
>> remaining JAR which is not yet packaged from
>>
>> http://la4j.org/
>
> I made some progress and also uploaded libla4j-java[1] to new. With
> this I tried to build drop-seq[2] and stumbled upon two issues:
>
> At first a lintian issue:
>
> W: drop-seq-tools: classpath-contains-relative-path usr/share/java/dropseq-2.3.0.jar: lib/FastInfoset-1.2.12.jar, lib/FastInfoset.jar, lib/FastInf
> N:
> N: The classpath listed in the jar file refers to a potential missing jar
> N: file. This could be the remnants of a build-time classpath that are not
> N: relevant for a JAR bundled in a Debian package.
> N:
> N: Alternatively, the classpath may be correct, but the package is lacking
> N: a jar file or a symlink to it.
> N:
> N: Note, Lintian assumes that all (relative) classpaths pointing to
> N: /usr/share/java/ (but not subdirs thereof) are satisfied by dependencies
> N: as long as there is at least one strong libX-java dependency.
> N:
> N: Severity: warning
> N:
> N: Check: languages/java
>
> I have no idea what this means. A `grep -Ri fastinfoset` inside the source
> tree remains empty.
>
The (current) problem is this in the jar-executable target:
<pathconvert property="classpath.manifest" refid="classpath" pathsep=" ">
<chainedmapper>
<flattenmapper/>
<globmapper from="*.jar" to="lib/*.jar"/>
</chainedmapper>
</pathconvert>
This causes the classpath for the runnable jar to be prefixed with lib/,
but /usr/share/java/lib/... (or lib/...) does not exist. Please try to change it to:
<pathconvert property="classpath.manifest" refid="classpath" pathsep=" ">
<flattenmapper/>
</pathconvert>
> The other one is a runtime error of the wrapper script:
>
> $ drop-seq
> Error: Could not find or load main class org.broadinstitute.dropseqrna.cmdline.DropSeqMain
> Caused by: java.lang.NoClassDefFoundError:
> picard/cmdline/PicardCommandLine
This is a likely consequence of the lintian above: the dropseq jar does
not refer to the correct classpath entry for picard.jar.
If it still does not work, please post the META-INF/MANIFEST.MF contents
of the usr/share/java/dropseq-2.3.0.jar (you can rename it to .zip, then
open it with an archiver).
Cheers and Best Regards,
--
Felix Natter
debian/rules!
More information about the Debian-med-packaging
mailing list