Maven pom includes dependencies when build on IBM JDK
-----------------------------------------------------
Key: CXF-3189
URL: https://issues.apache.org/jira/browse/CXF-3189
Project: CXF
Issue Type: Bug
Components: Build system
Affects Versions: 2.3.1
Environment: Windows XP, running IBM JDK 6
Reporter: Mark Kikken
We are developing applications for an IBM Websphere Application Server (WAS)
target-platform. For the development platform we chose an IBM JDK, since this
JDK will also be used on the target platform. However, the development machines
we are using come with the SUN JDK installed by default and some developers
were using this JDK. We noticed that not all builds worked when deployed on the
target platform. Some builds turned out to include too many dependencies in the
resulting war-file:
jaxp-api-1.4.2.jar
jaxp-ri-1.4.2.jar
serializer-2.7.1.jar
xalan-2.7.1.jar
Curiously, the builds done using a SUN JDK were fine. It turned out to be CXF
causing this. Some CXF POM-files contain a profile that is activated only when
built on IBM virtual machines. This profile will include the extra
dependencies. I think this is a bug since:
1 - This logic assumes that the development platform JDK is the deployment
platform JDK as well. This would be a best practice, but cannot be assumed to
be true. This assumption can lead to strange side-effects that had me puzzled
for at least a day.
2 - The added dependencies actually caused classcastexceptions on the IBM WAS.
This measure might have had some benefit in the past, but it is only causing
trouble on an IBM JDK 6.
3 - Wouldn't it be better to define a standard platform CXF is compatible with,
and then give users of other (older) platforms some guidance in documentation
on what extra dependencies to include to make things work on these platforms?
Work around:
I added exclusions for xalan:xalan and com.sun.xml.parsers:jaxp-ri on CXF
dependencies in my own root-POM.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.