maven-repository-provisioner seemed oh so close… :-)  You can give it an 
arbitrary destination dir to copy into.
But it didn’t work for an artifact like 
org.apache.edgent:edgent-parent:1.2.0-SNAPSHOT.
There were complaints and it didn’t go include the sub-projects. Enhancing the 
code didn’t look promising. 
So hard to believe that mvn doesn’t have simple tools for this sort of thing.

So I’ve create a shell script that does the trick.  All one will have to do is 
get this single script and run it (so I claim :-).

The script creates a new mvn project and then tweaks its pom to add 
dependencies to the various Edgent components.
It then does a “mvn compile" (to get the jars into the local maven repo)
and “mvn dependency:copy-dependencies” (to copy them out of the local repo).
It separates them into ext-jars and edgent-jars dirs and creates a classpath.sh 
that
can be used by apps in setting CLASSPATH.

Still tweaking, etc.  I’ll share in a bit.

— Dale


> On Jun 29, 2017, at 5:22 AM, Christofer Dutz <christofer.d...@c-ware.de> 
> wrote:
> 
> That only seems to work for deploying things and not for downloading them :-(
> 
> Chris
> 
> Am 27.06.17, 17:01 schrieb "Dale LaBossiere" <dml.apa...@gmail.com>:
> 
>    A brief search turned up 
> https://github.com/simpligility/maven-repository-tools/tree/master/maven-repository-provisioner
>  
> <https://github.com/simpligility/maven-repository-tools/tree/master/maven-repository-provisioner>
>    I cursory look at its README makes it sound almost exactly like what I was 
> hoping for… except it looks like it may only copy out to another repo and not 
> offer an “copy out to arbitrary dir” sort of mode :-)  I’ll have to look more 
> closely.
> 
>> On Jun 27, 2017, at 10:51 AM, Dale LaBossiere <dml.apa...@gmail.com> wrote:
>> 
>> 
>>> On Jun 27, 2017, at 9:28 AM, Christofer Dutz <christofer.d...@c-ware.de> 
>>> wrote:
>>> 
>>> Regarding the assembly,
>>> 
>>> The way the build is currently setup, we would be distributing jars via 
>>> Apaches Maven Repo which is synced with Maven Central. So, everyone using 
>>> maven would easily be able to use these. But if someone isn’t using Maven 
>>> or Ivy with a Maven resolver or Gradle with a Maven resolver, they would 
>>> have to either build Edgent locally or manually download all the jars from 
>>> Maven Central. I don’t think people would like that. I know of quite a few 
>>> that would be used to creating an Eclipse project with a libs directory, 
>>> which they simply copy a set of jars into. For that type of user, a binary 
>>> distribution would be beneficial.
>> 
>> Yes, I completely understand that overall use case / need.  I’d just like to 
>> address it without actually distributing a composite binary bundle :-)
>> Instead I’d like to just give / tell them a way to be able to just easily 
>> “get” the jars/deps that we will already be distributing in repos.
>> I definitely don’t want such a user to have to resort to building Edgent 
>> just to get their hands on the jars.
>> 
>> I'm surprised there isn’t already such a “get-from-repo [—recursive] 
>> component-coordinate” tool.
>> 
>> — Dale
> 
> 
> 

Reply via email to