On 17/10/2012 19:11, Mandy Chung wrote:
I need a reviewer to fix this build problem that only affects partial
build.
make/common/internal/Defs-jaxws.gmk maintains an explicit list of
JAXWS packages to import from a JDK for a partial JDK. However,
the list was not up-to-date and missing some JAXWS classes. You can
reproduce the problem by doing SKIP_CYCLE_BUILD=false BUILD_JAXWS=false
and got this exception:
Exception in thread "main" java.lang.NoClassDefFoundError:
com/sun/istack/internal/FinalArrayList
The fix is to add the missing packages to the list:
diff --git a/make/common/internal/Defs-jaxws.gmk
b/make/common/internal/Defs-jaxws.gmk
--- a/make/common/internal/Defs-jaxws.gmk
+++ b/make/common/internal/Defs-jaxws.gmk
@@ -34,6 +34,10 @@
javax/xml/ws \
javax/jws \
javax/annotation \
+ com/sun/org/glassfish \
+ com/sun/istack/internal \
+ com/sun/istack/internal/localization \
+ com/sun/istack/internal/logging \
com/sun/xml/internal/bind \
com/sun/xml/internal/fastinfoset \
com/sun/xml/internal/messaging \
I've run it into several times, the stack trace when running tests is
typically:
Exception in thread "main" java.lang.NoClassDefFoundError:
com/sun/istack/internal/Pool$Impl
at
com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:171)
at
com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:126)
at
com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl$JAXBContextBuilder.build(JAXBContextImpl.java:1148)
at
com.sun.xml.internal.bind.v2.ContextFactory.createContext(ContextFactory.java:130)
The proposed fix looks fine to me and helps until we transition to the
new build (where partial builds as we know them go away).
-Alan