RFR: 8080608: Missing archive name from jdeps -v -e output if no dependency on other JAR (original) (raw)

Daniel Fuchs daniel.fuchs at oracle.com
Tue May 19 17:02:56 UTC 2015


Hi,

Please find below a patch for jdeps:

http://cr.openjdk.java.net/~dfuchs/webrev_8080608/webrev.00/ https://bugs.openjdk.java.net/browse/JDK-8080608

The issue is described in JDK-8080608 as follows:

I have 2 jars:

indirect2.jar: class use.indirect2.UseUnsafeIndirectly2 { static Object obj = new use.unsafe.UseUnsafeClass(); }

unsafe.jar: class use.unsafe.UseUnsafeClass { static Object unsafe = Unsafe.getUnsafe(); } class use.unsafe.UseClassWithUnsafe { static Object obj = new UseUnsafeClass() }

When I run:

jdeps -v -e use.unsafe.UseUnsafeClass indirect2.jar unsafe.jar

it prints:

indirect2.jar -> dist/unsafe.jar use.indirect2.UseUnsafeIndirectly2 -> use.unsafe.UseUnsafeClass unsafe.jar use.unsafe.UseClassWithUnsafe -> use.unsafe.UseUnsafeClass unsafe.jar

as if use.unsafe.UseClassWithUnsafe was contained in indirect2.jar, while it is in fact contained in unsafe.jar...

The fix will make sure that jdeps prints instead:

indirect2.jar -> dist/unsafe.jar use.indirect2.UseUnsafeIndirectly2 -> use.unsafe.UseUnsafeClass unsafe.jar unsafe.jar -> dist/unsafe.jar use.unsafe.UseClassWithUnsafe -> use.unsafe.UseUnsafeClass unsafe.jar

best regards,

-- daniel



More information about the core-libs-dev mailing list