Thanks - I considered the approach that you mention, but the only
difference I could see was that it involved patching a lot more pom
files. The issue, though, seems to be with the transitive
dependencies - they are not being pulled into either the offline lib
or the webapps, which is baffling me. Not least because it works fine
in my dev environment, but not in the live environment.
On Wed, Nov 21, 2012 at 12:03 PM, Graham Triggs <firstname.lastname@example.org> wrote:
> Hi Richard,
> I'm not sure if that's a wise approach.
> The way I've done it, is that to inject dependencies into every (web)
> application, I add a dependencies section to the pom.xml in the modules
> directory (i.e. the parent of jspui, xmlui, etc.).
> And to inject dependencies into the offline 'lib' directory, I add it to the
> pom.xml in the root of the binary distribution, or the 'dspace' directory of
> the source distribution (i.e. the parent of the modules directory).
> I'm only adding the dependency to one JAR, and the other JAR(s) are always
> being pulled in via its transitive dependencies.
> Two things you should watch out for though:
> 1) if you have dependencies on specific versions of JARs that are also
> required by DSpace, you may need to add exclusions to stop it including the
> ones referenced by DSpace.
> 2) if you have dependencies on additional Spring modules, and don't provide
> exact version numbers (e.g. you allow Maven to use a range of versions),
> then Maven 3 will [probably] select the wrong version of your Spring module.
> On 21 November 2012 10:44, Richard Jones <email@example.com> wrote:
>> Hi Folks,
>> A little further question about this ...
>> I have had to work around the lack of support for adding code modules
>> to the core of DSpace by patching the dspace-api pom.xml file so that
>> my dependencies get pulled in everywhere they are relevant. I have
>> encountered a strange problem though, which I haven't been able to
>> In some environments, when I mvn clean package DSpace, my code
>> library's jar file gets pulled in to all the webapps and to the core
>> dspace lib directory, but none of /that/ library's dependencies get
>> pulled in. So, the application doesn't work because whenever my code
>> calls out to another library upon which it uniquely depends, there is
>> a ClassNotFound exception.
>> Perhaps there is an exclude filter somewhere in the build system, or a
>> rule which says not to pull in certain dependencies?
>> On Thu, Nov 1, 2012 at 10:37 AM, Richard Jones <firstname.lastname@example.org>
>> > Hi Folks,
>> > Great, thanks for that - I think this is probably what I want, so when
>> > we move to DSpace 3.0 I'll use that approach.
>> > Cheers,
>> > Richard
>> > On Tue, Oct 30, 2012 at 8:52 AM, helix84 <email@example.com> wrote:
>> >> Hi Richard,
>> >> Kevin just added this, I think it's related to what you're asking:
>> >> https://wiki.duraspace.org/display/DSDOC3x/Advanced+Customisation#AdvancedCustomisation-Additionsmodule
>> >> The change itself came from here:
>> >> https://github.com/DSpace/DSpace/pull/3
>> >> Regards,
>> >> ~~helix84
>> Monitor your physical, virtual and cloud infrastructure from a single
>> web console. Get in-depth insight into apps, servers, databases, vmware,
>> SAP, cloud infrastructure, etc. Download 30-day Free Trial.
>> Pricing starts from $795 for 25 servers or applications!
>> Dspace-devel mailing list