How do you integrate ivy with MSbuild
Asked Answered
B

2

7

What approach has worked well for you combining IVY + msbuild?

Our goal is to integrate IVY into the C#/C++ build process for dependency resolution and publishing. We have tried adding it to custom tasks at the beginning and end of the build and we have tried wrapping the msbuild calls with ant+ apache-ant-dotnet.

Other options might be gradle, buildr, rake.

What do you use?

Thanks

Peter

Berga answered 30/6, 2011 at 20:38 Comment(2)
Are you still using Ivy with MsBuild?Cosette
no longer there. I'd recommend using gradle to orchestrate. It seems like good combination of maven power, ant usefulness with easier to follow code / idioms.Berga
K
7

Most build technologies can use libraries found in a local directory. I'd suggest using the command-line ivy program to populate this, at the start of your build:

java -jar ivy.jar -ivy ivy.xml -settings ivysettings.xml -retrieve "lib/[conf]/[artifact].[ext]"

Your dependencies are listed in a standard ivy file called ivy.xml. The protocol, location and layout of your remote repository is described in ivysettings.xml

The advantage of this approach (as opposed to switching to Gradle, etc) is that you're not trying to replace your existing build tool. Ivy is solely concerned with managing dependencies.

Kannan answered 2/7, 2011 at 10:7 Comment(1)
For future readers. The way I look at the ivy command line, is that it is "dumb". You push some files into the binary-repository with a version and a package-name. Then later, another process who needs that "package-name" will use the ivy-command-line to retrieve files from the binary-repository. Also, I prefer the Ivy version-naming-convention over Nuget. "2.1+" makes sense to me. "latest-revision" makes sense to me. Just one opinion. Upvote for this response.Cosette
E
0

My team has been using Ivy for .NET for a couple of years very successfully. I know several more that give it a vote of confidence. Use it standalone. Wrap calls into msbuild tasks. No need to use Ant integration.

Eagleeyed answered 8/2, 2012 at 21:33 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.