As per [1], the maven assembly plugin isn't the best way to create an uber jar. The maven shade plugin is better for these purposes. I tried using the shade plugin and it seems to give me the result I want. The providers and apis get populated in the META-INF/services. I even tried running the tool against aws-s3 and cloudfiles-us. It worked just fine.
But I'm seeing some problems when running against the "transient" and "filesystem" providers. For the "transient" blobstore, I see the following: "Cannot retry after server error, command has exceeded retry limit 5:..." For the "filesystem" blobstore, I get an error saying that it can't find the container even if I see the directory on the filesystem Digging deeper. -Shri [1] http://maven.apache.org/plugins/maven-assembly-plugin/ On Mon, Dec 16, 2013 at 6:35 PM, Andrew Phillips <[email protected]> wrote: >> I had tried that earlier but that failed with the same problem. I >> tried it again now and see that same problem as above. I wonder if >> there's anything wrong with my pom.xml [1]. >> >> I create the jar-with-dependencies using: >> $ mvn clean compile assembly:single > > > Ah, yes, that won't work just like that (well spotted) - some > META-INF/services merging needs to happen to ensure all the providers are > retained. > > See e.g. the blobstore-basics jar-with-deps definition [1] for an example. > > ap > > [1] > https://github.com/jclouds/jclouds-examples/blob/master/blobstore-basics/src/main/assembly/jar-with-dependencies.xml#L31
