Re: Beginner question: I can't find the library i'm using on the repository
Yes, it includes the classes of the 3rd party lib directly extracted within your classpath. In my opinion... a project exists in two forms, source and package. The package can be referenced as a dependency in other projects. The source is the manager of what gets built into the package. So, as long as my project source maintains its relationship to the 3rd party library by way of pom dependency to it as installed to my local system repository, it continues to be very easily upgradable/maintainable. Employing the mvn-shade plugin with mvn-release plugin lets me then include the 3rd party lib cohesively within my package, directly within the same classpath, so that no dependency resolution issues arise on any users' ends. In sum, the combination of the acknowledgement of source and package being different things plus mvn-shade lets me provide a functional library of my own by being agnostic to how it becomes that way. ...but I'm only 1.5 weeks into my Maven love affair. :) Look up the mvn-shade plugin website. It's an apache project. SF 2010/3/30 Benoît Thiébault > I'm at chapter 11, I guess I read this part too quickly. > Very good book by the way > > Regarding mvn-shade, I'm not really sure I understood what it does: does it > include the classes of this third party library within my software package ? > Seems good to me (even though I have no idea if this is a recommended best > practice) > > Regards > Ben > > Le 30 mars 2010 à 17:44, nicolas de loof a écrit : > > > you should read chapter 6, it explains the issue you get here :) > > > > The short term solution is to write a custom pom and use mvn > > install:install-file > > > > If you plan to share the project with other in your company, or on the > Net, > > you will have to document this step and loose some advantages of Maven. > > Working inside a company, the simpliest solution is to install Nexus (or > any > > other repository manager) and deploy your custom artifacts. For public > > distribution, you will need to make the dependency publicly available. > > > > For legacy artifact this is really an issue. Creating yet another public > > repo with some artifacts that may conflict with central and adding > > in your POM is not a good option (read > > > http://www.sonatype.com/people/2010/03/why-external-repos-are-being-phased-out-of-central/ > ). > > The best way IMHO would be to propose the artifact for upload in central. > > > > Cheers, > > Nicolas > > > > 2010/3/30 Wendy Smoak > > > >> 2010/3/30 Benoît Thiébault : > >>> My software depends on an open source software, jlibeps ( > >> http://jlibeps.sourceforge.net/), but I can't find it in any Maven > >> repository. This library seems not very maintained anymore, but it does > what > >> I need it to do. I don't want (yet) to host my own Maven repository and > I > >> was wondering what are my options here ? Should I create a POM file for > the > >> library and submit it to a Maven repository ? It seems ( > >> > http://maven.apache.org/guides/mini/guide-central-repository-upload.html) > >> the simplest way to do it would be to host is on an approved forge, but > I > >> don't own the project (that looks dead to me)... > >> > >> Eventually, you'll need to get it into some remote repository. > >> > >> For the moment, you can install it into your local repo with "mvn > >> install:install-file -Dfile=... -DgeneratePom=true ..." . (See the > >> maven install plugin docs for the missing bits.) > >> > >> Unfortunately that means everyone who wants to build your project will > >> also need to do that, but as a temporary fix it will get you past the > >> missing dependency errors. > >> > >> -- > >> Wendy > >> > >> - > >> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org > >> For additional commands, e-mail: users-h...@maven.apache.org > >> > >> > > > Benoît Thiébault > > > > - > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org > For additional commands, e-mail: users-h...@maven.apache.org > >
Re: Beginner question: I can't find the library i'm using on the repository
I'm at chapter 11, I guess I read this part too quickly. Very good book by the way Regarding mvn-shade, I'm not really sure I understood what it does: does it include the classes of this third party library within my software package ? Seems good to me (even though I have no idea if this is a recommended best practice) Regards Ben Le 30 mars 2010 à 17:44, nicolas de loof a écrit : > you should read chapter 6, it explains the issue you get here :) > > The short term solution is to write a custom pom and use mvn > install:install-file > > If you plan to share the project with other in your company, or on the Net, > you will have to document this step and loose some advantages of Maven. > Working inside a company, the simpliest solution is to install Nexus (or any > other repository manager) and deploy your custom artifacts. For public > distribution, you will need to make the dependency publicly available. > > For legacy artifact this is really an issue. Creating yet another public > repo with some artifacts that may conflict with central and adding > in your POM is not a good option (read > http://www.sonatype.com/people/2010/03/why-external-repos-are-being-phased-out-of-central/). > The best way IMHO would be to propose the artifact for upload in central. > > Cheers, > Nicolas > > 2010/3/30 Wendy Smoak > >> 2010/3/30 Benoît Thiébault : >>> My software depends on an open source software, jlibeps ( >> http://jlibeps.sourceforge.net/), but I can't find it in any Maven >> repository. This library seems not very maintained anymore, but it does what >> I need it to do. I don't want (yet) to host my own Maven repository and I >> was wondering what are my options here ? Should I create a POM file for the >> library and submit it to a Maven repository ? It seems ( >> http://maven.apache.org/guides/mini/guide-central-repository-upload.html) >> the simplest way to do it would be to host is on an approved forge, but I >> don't own the project (that looks dead to me)... >> >> Eventually, you'll need to get it into some remote repository. >> >> For the moment, you can install it into your local repo with "mvn >> install:install-file -Dfile=... -DgeneratePom=true ..." . (See the >> maven install plugin docs for the missing bits.) >> >> Unfortunately that means everyone who wants to build your project will >> also need to do that, but as a temporary fix it will get you past the >> missing dependency errors. >> >> -- >> Wendy >> >> - >> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org >> For additional commands, e-mail: users-h...@maven.apache.org >> >> Benoît Thiébault - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Beginner question: I can't find the library i'm using on the repository
Forgot to mention that mvn-shade will also produce an updated-dependency-pom.xml (or similarly named) where white-listed lib's dependency on your local repo will be removed from the packaged pom.xml. I use mvn-shade with mvn release plugin to deploy to Nexus OSS repo with those adjustments. On Tue, Mar 30, 2010 at 11:48 AM, Steve Francolla wrote: > You can install the lib to your local system repo and then completely avoid > others having the anticipated dependency build problem by applying the > mvn-shade-plugin: > > (1) mvn install the lib to my local system repo. > > mvn install:install-file -Dfile=lib\.jar -DgroupId= > -DartifactId= -Dversion= -Dpackaging=jar > > > (2) then, simply package this dependency within my proj's package with > something like: > > > ... > > > > org.apache.maven.plugins > maven-shade-plugin > 1.3.2 > > > package > > shade > > > > > > [the-lib-group]:[the-lib-artifact]:* > > > > > ... > > > Those who pull down your project will receive the depended upon library's > classes built directly into the project tree. > > SF > > > > On Tue, Mar 30, 2010 at 11:29 AM, Jeff MAURY wrote: > >> If it does not exist on the cloud, don't try to put it there, there are >> probably many reasons for that. >> I would recommand that you install a Maven repository manager like Nexus >> and >> once you've set it up, then deploy on it the missing jar and all your >> internal Maven projects will see it now !!! >> >> Regards >> Jeff MAURY >> >> 2010/3/30 Benoît Thiébault >> >> > Hello everyone, >> > >> > I am currently reading the very good Maven book from Nicolas De loof and >> > Arnaud Héritier (written in French) and I have decided to convert one of >> my >> > test projects to Maven. Unfortunately, I already have a problem :-). >> > >> > My software depends on an open source software, jlibeps ( >> > http://jlibeps.sourceforge.net/), but I can't find it in any Maven >> > repository. This library seems not very maintained anymore, but it does >> what >> > I need it to do. I don't want (yet) to host my own Maven repository and >> I >> > was wondering what are my options here ? Should I create a POM file for >> the >> > library and submit it to a Maven repository ? It seems ( >> > >> http://maven.apache.org/guides/mini/guide-central-repository-upload.html) >> > the simplest way to do it would be to host is on an approved forge, but >> I >> > don't own the project (that looks dead to me)... >> > >> > Thanks for your feedbacks >> > >> > Ben >> > - >> > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org >> > For additional commands, e-mail: users-h...@maven.apache.org >> > >> > >> >> >> -- >> http://www.jeffmaury.com >> http://riadiscuss.jeffmaury.com >> http://www.lastfm.fr/listen/user/jeffmaury/personal >> > > > > > > On Tue, Mar 30, 2010 at 11:29 AM, Jeff MAURY wrote: > >> If it does not exist on the cloud, don't try to put it there, there are >> probably many reasons for that. >> I would recommand that you install a Maven repository manager like Nexus >> and >> once you've set it up, then deploy on it the missing jar and all your >> internal Maven projects will see it now !!! >> >> Regards >> Jeff MAURY >> >> 2010/3/30 Benoît Thiébault >> >> > Hello everyone, >> > >> > I am currently reading the very good Maven book from Nicolas De loof and >> > Arnaud Héritier (written in French) and I have decided to convert one of >> my >> > test projects to Maven. Unfortunately, I already have a problem :-). >> > >> > My software depends on an open source software, jlibeps ( >> > http://jlibeps.sourceforge.net/), but I can't find it in any Maven >> > repository. This library seems not very maintained anymore, but it does >> what >> > I need it to do. I don't want (yet) to host my own Maven repository and >> I >> > was wondering what are my options here ? Should I create a POM file for >> the >> > library and submit it to a Maven repository ? It seems ( >> > >> http://maven.apache.org/guides/mini/guide-central-repository-upload.html) >> > the simplest way to do it would be to host is on an approved forge, but >> I >> > don't own the project (that looks dead to me)... >> > >> > Thanks for your feedbacks >> > >> > Ben >> > - >> > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org >> > For additional commands, e-mail: users-h...@maven.apache.org >> > >> > >> >> >> -- >> http://www.jeffmaury.com >> http://riadiscuss.jeffmaury.com >> http://www.lastfm.fr/listen/user/jeffmaury/personal >> > >
Re: Beginner question: I can't find the library i'm using on the repository
You can install the lib to your local system repo and then completely avoid others having the anticipated dependency build problem by applying the mvn-shade-plugin: (1) mvn install the lib to my local system repo. mvn install:install-file -Dfile=lib\.jar -DgroupId= -DartifactId= -Dversion= -Dpackaging=jar (2) then, simply package this dependency within my proj's package with something like: ... org.apache.maven.plugins maven-shade-plugin 1.3.2 package shade [the-lib-group]:[the-lib-artifact]:* ... Those who pull down your project will receive the depended upon library's classes built directly into the project tree. SF On Tue, Mar 30, 2010 at 11:29 AM, Jeff MAURY wrote: > If it does not exist on the cloud, don't try to put it there, there are > probably many reasons for that. > I would recommand that you install a Maven repository manager like Nexus > and > once you've set it up, then deploy on it the missing jar and all your > internal Maven projects will see it now !!! > > Regards > Jeff MAURY > > 2010/3/30 Benoît Thiébault > > > Hello everyone, > > > > I am currently reading the very good Maven book from Nicolas De loof and > > Arnaud Héritier (written in French) and I have decided to convert one of > my > > test projects to Maven. Unfortunately, I already have a problem :-). > > > > My software depends on an open source software, jlibeps ( > > http://jlibeps.sourceforge.net/), but I can't find it in any Maven > > repository. This library seems not very maintained anymore, but it does > what > > I need it to do. I don't want (yet) to host my own Maven repository and I > > was wondering what are my options here ? Should I create a POM file for > the > > library and submit it to a Maven repository ? It seems ( > > http://maven.apache.org/guides/mini/guide-central-repository-upload.html > ) > > the simplest way to do it would be to host is on an approved forge, but I > > don't own the project (that looks dead to me)... > > > > Thanks for your feedbacks > > > > Ben > > - > > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org > > For additional commands, e-mail: users-h...@maven.apache.org > > > > > > > -- > http://www.jeffmaury.com > http://riadiscuss.jeffmaury.com > http://www.lastfm.fr/listen/user/jeffmaury/personal > On Tue, Mar 30, 2010 at 11:29 AM, Jeff MAURY wrote: > If it does not exist on the cloud, don't try to put it there, there are > probably many reasons for that. > I would recommand that you install a Maven repository manager like Nexus > and > once you've set it up, then deploy on it the missing jar and all your > internal Maven projects will see it now !!! > > Regards > Jeff MAURY > > 2010/3/30 Benoît Thiébault > > > Hello everyone, > > > > I am currently reading the very good Maven book from Nicolas De loof and > > Arnaud Héritier (written in French) and I have decided to convert one of > my > > test projects to Maven. Unfortunately, I already have a problem :-). > > > > My software depends on an open source software, jlibeps ( > > http://jlibeps.sourceforge.net/), but I can't find it in any Maven > > repository. This library seems not very maintained anymore, but it does > what > > I need it to do. I don't want (yet) to host my own Maven repository and I > > was wondering what are my options here ? Should I create a POM file for > the > > library and submit it to a Maven repository ? It seems ( > > http://maven.apache.org/guides/mini/guide-central-repository-upload.html > ) > > the simplest way to do it would be to host is on an approved forge, but I > > don't own the project (that looks dead to me)... > > > > Thanks for your feedbacks > > > > Ben > > - > > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org > > For additional commands, e-mail: users-h...@maven.apache.org > > > > > > > -- > http://www.jeffmaury.com > http://riadiscuss.jeffmaury.com > http://www.lastfm.fr/listen/user/jeffmaury/personal >
Re: Beginner question: I can't find the library i'm using on the repository
I don't work on open source projects so I haven't faced this issue. However I would think that the same server you plan to use to host your project on could be used to host the dependency; the key is that it has to be available just like yours. -Dave 2010/3/30 Benoît Thiébault : > My software is an open source project (not released yet). > > I currently compile it with Ant and I store in my lib folder the JAR I > manually downloaded on the net. > > What will happen when I release the software ? I guess I will have to provide > this dependency JAR as well to new developers... This is not very maven-y... > Or should I then make my local repository public ? > > Le 30 mars 2010 à 17:29, Jeff MAURY a écrit : > >> If it does not exist on the cloud, don't try to put it there, there are >> probably many reasons for that. >> I would recommand that you install a Maven repository manager like Nexus and >> once you've set it up, then deploy on it the missing jar and all your >> internal Maven projects will see it now !!! >> >> Regards >> Jeff MAURY >> >> 2010/3/30 Benoît Thiébault >> >>> Hello everyone, >>> >>> I am currently reading the very good Maven book from Nicolas De loof and >>> Arnaud Héritier (written in French) and I have decided to convert one of my >>> test projects to Maven. Unfortunately, I already have a problem :-). >>> >>> My software depends on an open source software, jlibeps ( >>> http://jlibeps.sourceforge.net/), but I can't find it in any Maven >>> repository. This library seems not very maintained anymore, but it does what >>> I need it to do. I don't want (yet) to host my own Maven repository and I >>> was wondering what are my options here ? Should I create a POM file for the >>> library and submit it to a Maven repository ? It seems ( >>> http://maven.apache.org/guides/mini/guide-central-repository-upload.html) >>> the simplest way to do it would be to host is on an approved forge, but I >>> don't own the project (that looks dead to me)... >>> >>> Thanks for your feedbacks >>> >>> Ben >>> - >>> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org >>> For additional commands, e-mail: users-h...@maven.apache.org >>> >>> >> >> >> -- >> http://www.jeffmaury.com >> http://riadiscuss.jeffmaury.com >> http://www.lastfm.fr/listen/user/jeffmaury/personal > > > > > - > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org > For additional commands, e-mail: users-h...@maven.apache.org > > - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Beginner question: I can't find the library i'm using on the repository
you should read chapter 6, it explains the issue you get here :) The short term solution is to write a custom pom and use mvn install:install-file If you plan to share the project with other in your company, or on the Net, you will have to document this step and loose some advantages of Maven. Working inside a company, the simpliest solution is to install Nexus (or any other repository manager) and deploy your custom artifacts. For public distribution, you will need to make the dependency publicly available. For legacy artifact this is really an issue. Creating yet another public repo with some artifacts that may conflict with central and adding in your POM is not a good option (read http://www.sonatype.com/people/2010/03/why-external-repos-are-being-phased-out-of-central/). The best way IMHO would be to propose the artifact for upload in central. Cheers, Nicolas 2010/3/30 Wendy Smoak > 2010/3/30 Benoît Thiébault : > > My software depends on an open source software, jlibeps ( > http://jlibeps.sourceforge.net/), but I can't find it in any Maven > repository. This library seems not very maintained anymore, but it does what > I need it to do. I don't want (yet) to host my own Maven repository and I > was wondering what are my options here ? Should I create a POM file for the > library and submit it to a Maven repository ? It seems ( > http://maven.apache.org/guides/mini/guide-central-repository-upload.html) > the simplest way to do it would be to host is on an approved forge, but I > don't own the project (that looks dead to me)... > > Eventually, you'll need to get it into some remote repository. > > For the moment, you can install it into your local repo with "mvn > install:install-file -Dfile=... -DgeneratePom=true ..." . (See the > maven install plugin docs for the missing bits.) > > Unfortunately that means everyone who wants to build your project will > also need to do that, but as a temporary fix it will get you past the > missing dependency errors. > > -- > Wendy > > - > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org > For additional commands, e-mail: users-h...@maven.apache.org > >
Re: Beginner question: I can't find the library i'm using on the repository
My software is an open source project (not released yet). I currently compile it with Ant and I store in my lib folder the JAR I manually downloaded on the net. What will happen when I release the software ? I guess I will have to provide this dependency JAR as well to new developers... This is not very maven-y... Or should I then make my local repository public ? Le 30 mars 2010 à 17:29, Jeff MAURY a écrit : > If it does not exist on the cloud, don't try to put it there, there are > probably many reasons for that. > I would recommand that you install a Maven repository manager like Nexus and > once you've set it up, then deploy on it the missing jar and all your > internal Maven projects will see it now !!! > > Regards > Jeff MAURY > > 2010/3/30 Benoît Thiébault > >> Hello everyone, >> >> I am currently reading the very good Maven book from Nicolas De loof and >> Arnaud Héritier (written in French) and I have decided to convert one of my >> test projects to Maven. Unfortunately, I already have a problem :-). >> >> My software depends on an open source software, jlibeps ( >> http://jlibeps.sourceforge.net/), but I can't find it in any Maven >> repository. This library seems not very maintained anymore, but it does what >> I need it to do. I don't want (yet) to host my own Maven repository and I >> was wondering what are my options here ? Should I create a POM file for the >> library and submit it to a Maven repository ? It seems ( >> http://maven.apache.org/guides/mini/guide-central-repository-upload.html) >> the simplest way to do it would be to host is on an approved forge, but I >> don't own the project (that looks dead to me)... >> >> Thanks for your feedbacks >> >> Ben >> - >> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org >> For additional commands, e-mail: users-h...@maven.apache.org >> >> > > > -- > http://www.jeffmaury.com > http://riadiscuss.jeffmaury.com > http://www.lastfm.fr/listen/user/jeffmaury/personal - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Beginner question: I can't find the library i'm using on the repository
2010/3/30 Benoît Thiébault : > My software depends on an open source software, jlibeps > (http://jlibeps.sourceforge.net/), but I can't find it in any Maven > repository. This library seems not very maintained anymore, but it does what > I need it to do. I don't want (yet) to host my own Maven repository and I was > wondering what are my options here ? Should I create a POM file for the > library and submit it to a Maven repository ? It seems > (http://maven.apache.org/guides/mini/guide-central-repository-upload.html) > the simplest way to do it would be to host is on an approved forge, but I > don't own the project (that looks dead to me)... Eventually, you'll need to get it into some remote repository. For the moment, you can install it into your local repo with "mvn install:install-file -Dfile=... -DgeneratePom=true ..." . (See the maven install plugin docs for the missing bits.) Unfortunately that means everyone who wants to build your project will also need to do that, but as a temporary fix it will get you past the missing dependency errors. -- Wendy - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Beginner question: I can't find the library i'm using on the repository
You need local maven repository manager...something like Artifactory...very easy to setup. -Dave 2010/3/30 Benoît Thiébault : > Hello everyone, > > I am currently reading the very good Maven book from Nicolas De loof and > Arnaud Héritier (written in French) and I have decided to convert one of my > test projects to Maven. Unfortunately, I already have a problem :-). > > My software depends on an open source software, jlibeps > (http://jlibeps.sourceforge.net/), but I can't find it in any Maven > repository. This library seems not very maintained anymore, but it does what > I need it to do. I don't want (yet) to host my own Maven repository and I was > wondering what are my options here ? Should I create a POM file for the > library and submit it to a Maven repository ? It seems > (http://maven.apache.org/guides/mini/guide-central-repository-upload.html) > the simplest way to do it would be to host is on an approved forge, but I > don't own the project (that looks dead to me)... > > Thanks for your feedbacks > > Ben > - > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org > For additional commands, e-mail: users-h...@maven.apache.org > > - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Beginner question: I can't find the library i'm using on the repository
If it does not exist on the cloud, don't try to put it there, there are probably many reasons for that. I would recommand that you install a Maven repository manager like Nexus and once you've set it up, then deploy on it the missing jar and all your internal Maven projects will see it now !!! Regards Jeff MAURY 2010/3/30 Benoît Thiébault > Hello everyone, > > I am currently reading the very good Maven book from Nicolas De loof and > Arnaud Héritier (written in French) and I have decided to convert one of my > test projects to Maven. Unfortunately, I already have a problem :-). > > My software depends on an open source software, jlibeps ( > http://jlibeps.sourceforge.net/), but I can't find it in any Maven > repository. This library seems not very maintained anymore, but it does what > I need it to do. I don't want (yet) to host my own Maven repository and I > was wondering what are my options here ? Should I create a POM file for the > library and submit it to a Maven repository ? It seems ( > http://maven.apache.org/guides/mini/guide-central-repository-upload.html) > the simplest way to do it would be to host is on an approved forge, but I > don't own the project (that looks dead to me)... > > Thanks for your feedbacks > > Ben > - > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org > For additional commands, e-mail: users-h...@maven.apache.org > > -- http://www.jeffmaury.com http://riadiscuss.jeffmaury.com http://www.lastfm.fr/listen/user/jeffmaury/personal
Beginner question: I can't find the library i'm using on the repository
Hello everyone, I am currently reading the very good Maven book from Nicolas De loof and Arnaud Héritier (written in French) and I have decided to convert one of my test projects to Maven. Unfortunately, I already have a problem :-). My software depends on an open source software, jlibeps (http://jlibeps.sourceforge.net/), but I can't find it in any Maven repository. This library seems not very maintained anymore, but it does what I need it to do. I don't want (yet) to host my own Maven repository and I was wondering what are my options here ? Should I create a POM file for the library and submit it to a Maven repository ? It seems (http://maven.apache.org/guides/mini/guide-central-repository-upload.html) the simplest way to do it would be to host is on an approved forge, but I don't own the project (that looks dead to me)... Thanks for your feedbacks Ben - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org