Skip to content
This repository has been archived by the owner on Apr 5, 2022. It is now read-only.

[Sprint 50]XD-3151 Updated Modules.asciidoc #1693

Closed
wants to merge 1 commit into from
Closed

[Sprint 50]XD-3151 Updated Modules.asciidoc #1693

wants to merge 1 commit into from

Conversation

dturanski
Copy link
Contributor

No description provided.

@dturanski dturanski changed the title XD-3151 Updated Modules.asciidoc [Sprint 50]XD-3151 Updated Modules.asciidoc Jun 5, 2015
@ericbottard ericbottard self-assigned this Jun 8, 2015
[[module-dependency-management]]
==== Module dependency management

Runtime issues may arise if module dependencies conflict with those on the Spring XD classpath. This happens when a module declares a dependency using a different version of a jar provided by the Spring XD runtime. If the versions are the same, the build tools will ensure that these dependencies will not be exported to the module jar. However if the versions declared in your build are different, the dependencies will be exported and loaded by the module class loader. The tools are designed to permit you to override the version, but generally we don't recommend this unless you have a specific requirement to do so. If there are conflicting dependencies, your module may or may not work. Symptoms of version conflicts include `ClassDefNotFoundException` or `NoSuchMethodError` when you deploy the module. If you encounter such errors, you should manually check the contents of `$XD_INSTALL_DIR/xd/lib` against the contents of the module jar, and make the necessary changes to your build script. Compile time dependencies must be declared in any case. If they are also on the Spring XD classpath they should be declared as `provided`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if the versions are different ...

I don't think this is true, is it really?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I should clarify this. It's true for Gradle, not Maven which is explained further down.

@dturanski
Copy link
Contributor Author

Another improvement IMO is to organize this into separate sections, Building with Maven and Building with Gradle. I think most users would find this more useful.

@ericbottard
Copy link
Contributor

Current state of this PR merged as a06033e sorry. Feel free to either

  • close this and issue another PR
  • append more commits, will rebase and cherry-pick as needed

@dturanski
Copy link
Contributor Author

closed; Issued a new PR #1697

@dturanski dturanski closed this Jun 8, 2015
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
2 participants