Bug#893221: knopflerfish-osgi FTBFS with openjdk-9

Felix Natter fnatter at gmx.net
Wed Mar 28 19:40:42 UTC 2018


Adrian Bunk <bunk at debian.org> writes:

> On Sat, Mar 24, 2018 at 11:35:48AM +0100, Felix Natter wrote:
>> hello Adrian,
>
> Hi Felix,

hello Adrian,

>> thank you very much for the report.
>> 
>> I am not sure that this is a Java9 issue, lookls more like some classes
>> (org.osgi.annotation.versioning.*) were dropped from a package I depend
>> on.
>
> the relevant change is that javadoc now gives errors instead of warnings 
> for some problems (often caused by incorrect/incomplete classpath).
>
> Fails with Java 9:
> /usr/lib/jvm/java-9-openjdk-amd64/bin/javadoc -locale en -encoding "UTF-8" -sourcepath osgi/framework/src -d api -subpackages org.knopflerfish:org.osgi
>
> Works with Java 8:
> /usr/lib/jvm/java-8-openjdk-amd64/bin/javadoc -locale en -encoding "UTF-8" -sourcepath osgi/framework/src -d api -subpackages org.knopflerfish:org.osgi

Many thanks for the explanation. Most errors are fixed by adding "-cp
/usr/share/java/osgi.annotation.jar".

The remaining problem is the Android (Dalvik) dependency (we build
without Android support):

Loading source files for package org.knopflerfish...
Loading source files for package org.osgi...
Constructing Javadoc information...
osgi/framework/src/org/knopflerfish/framework/bundlestorage/dex/DexArchive.java:47: error: package dalvik.system does not exist
import dalvik.system.DexFile;
                    ^
osgi/framework/src/org/knopflerfish/framework/bundlestorage/dex/DexArchive.java:57: error: cannot find symbol
  private DexFile dexFile = null;
          ^
  symbol:   class DexFile
  location: class DexArchive
2 errors

I tried several variations of javadoc's -exclude parameter:

-exclude "org.knopflerfish.framework.bundlestorage.dex"
-exclude "org.knopflerfish.framework.bundlestorage.dex.DexArchive"
-exclude "org.knopflerfish.framework.bundlestorage.dex.*"
-exclude "org/knopflerfish/framework/bundlestorage/dex"
-exclude dalvik.system
[...]

Do you have an idea what I'm doing wrong? To me it looks like -exclude
is broken/ignored. If we can't fix the javadoc invocation, I suggest
to patch out DexArchive.java.
What do you think?

Many Thanks and Best Regards,
-- 
Felix Natter
debian/rules!



More information about the pkg-java-maintainers mailing list