Skip to content


Browse files Browse the repository at this point in the history
Merge branch 'jruby-1_7'
  • Loading branch information
mkristian committed Oct 3, 2014
2 parents f50ddf5 + 18232b2 commit c528a96
Show file tree
Hide file tree
Showing 2 changed files with 49 additions and 8 deletions.
55 changes: 48 additions & 7 deletions
Expand Up @@ -188,6 +188,35 @@ The complete CI test suite will take anywhere from 20 to 45 minutes to
complete, but provides the most accurate indication of the stability of
your local JRuby source.

### maven integration tests - -Pjruby-complete or -Pmain

maven integration test will use the packed maven artifact to run the tests in a forked maven instance. these maven projects are locatated in


to trigger the tests with the build:

mvn -Pmain -Dinvoker.skip=false
mvn -Pcomplete -Dinvoker.skip=false
mvn -Pdist -Dinvoker.skip=false
mvn -Pjruby-jars -Dinvoker.skip=false

to pick a particular test add the name of the directory inside the respective *src/it* folder, like (wildcards are possible):

mvn -Pmain -Dinvoker.skip=false -Dinvoker.test=integrity
mvn -Pmain -Dinvoker.skip=false -Dinvoker.test=j2ee*
mvn -Pmain -Dinvoker.skip=false -Dinvoker.test=osgi*

Clean Build

Expand All @@ -205,6 +234,12 @@ that everything is rebuilt properly.

NOTE: ```mvn clean``` just cleans the **jruby-core** artifact and the **./lib/jruby.jar** !

clean everything:

mvn -Pclean

Distribution Packages

Expand Down Expand Up @@ -240,7 +275,6 @@ mvn -Pjruby-jars

the gem will be in ./maven/jruby-jars/pkg

<<<<<<< HEAD
### building ALL packages ###

Expand All @@ -257,10 +291,13 @@ jruby -S rmvn -Pclean

## release ##

first set the new version (on jruby-1_7 branch):
first set the new version in the file *VERSION* inside the root directory and then

mvn versions:set -DnewVersion=1.7.5
rake maven:dump_poms
rmvn validate -Pall

Expand All @@ -279,7 +316,8 @@ mvn clean deploy -Psonatype-oss-release -Prelease

go to and close the deployment which will check if all 'required' files are in place and then finally push the release to maven central and . . .

# hacking the build system #
hacking the build system

the build system uses the **ruby-maven** gem and with this the build files are **pom.rb** and **Mavenfile**. the **Mavenfile** are used whenever the module produces a gem and uses the gemspec file for the gem for setting up the POM. otherwise **pom.rb** are used. so any change in the build-system is done in those files !!!!

Expand All @@ -297,11 +335,14 @@ regular maven uses the the jruby from the installation, i.e. this also

at some parts there are **inline** plugins in **pom.rb** or **Mavenfile** which will work directly with regular maven where there is a special plugin running those ruby parts. see **./lib/pom.rb**.

### Start development
### Start a new version

After the release set the new development version:
After the release set the new development version in *VERSION* and generate the pom.xml files

mvn versions:set -DnewVersion=1.7.6-SNAPSHOT
rake maven:dump_poms
rmvn validate -Pall
2 changes: 1 addition & 1 deletion lib/pom.rb
@@ -1,5 +1,5 @@
class ImportedGem
attr_reader :name, :default_gem, :pom_version_key, :ruby_version, :only_spec
attr_reader :name, :default_gem, :pom_version_key, :ruby_version

def initialize( name, pom_version_key, default_gem, ruby_version = nil )
@name = name
Expand Down

0 comments on commit c528a96

Please sign in to comment.