I think we need to move the installs of all gems other than jruby-launcher out of the package phase.
I've been working with @hone to get 1.7.5 built for Heroku, and we ran into a snag: there's no way to build a working JRuby install without installing gems many (most) sites will not want installed.
I think we want the set up to work like this:
Phase X (probably package): build everything needed to have a functional JRuby instance. This would include jruby-launcher, but no other gems, since users may have their own preferred versions.
Phase Y (perhaps integration-test): install gems needed for integration testing, like rake, rspec, minitest-excludes, and so on.
I started trying to do this in this patch: https://gist.github.com/6928100
But the modules don't align right. In order to install the gem, it needs openssl, but openssl builds after core.
I'm seeing this on a test app on heroku:
~ $ gem list
Picked up JAVA_TOOL_OPTIONS: -Djava.rmi.server.useCodebaseOnly=true
*** LOCAL GEMS ***
jruby-launcher (1.0.19 java)
json (1.8.0 java)
krypt-core (0.0.1 universal-java)
no do not install the gem as core. we still can install the launcher as we did in ./test/pom.xml and install the other gems only when we run the tests. from a maven point of view setting the scope of those gems to test should do. not sure if the gem-maven-plugin can handle that as expected.
instead of adding that extra little feature to gem-maven-plugin we can put all those extra gems into the test profile which is anyways needed to execute the tests and only then these gems get installed.
should fix #1114
the above patch will install only the jruby-launcher gem and the other gems will be installed with $mvn -Ptest
I am not sure about the rake tasks they would probably need the $ mvn -Ptest to setup the tests. the old ant used by travis should work.
I did not adjust (yet) the BUILDING.md file or merge it to master !!!
keep that open until it is merged into master with proper docu in BUILDING.md
@mkristian Has this been properly merged to master?
only with -Pbootstrap extra gems get installed, otherwise there are only the default gems, both on master as well jruby-1.7
there is even an integration-test on jruby-complete and jruby-dist which verifies there are only these default gems pre-installed.