| 3 | | This package contains several TaskLibs for rake which can be |
|---|
| 4 | | used to build Java projects. |
|---|
| | 3 | "If I knew then what I know now, I would have tried using a real |
|---|
| | 4 | scripting language, such as JavaScript via the Rhino component or |
|---|
| | 5 | Python via JPython, with bindings to Java objects which implemented |
|---|
| | 6 | the functionality expressed in todays tasks. Then, there would be a |
|---|
| | 7 | first class way to express logic and we wouldn't be stuck with XML as |
|---|
| | 8 | a format that is too bulky for the way that people really want to use |
|---|
| | 9 | the tool." |
|---|
| | 10 | |
|---|
| | 11 | -- James Duncan Davidson, creator of ant |
|---|
| | 12 | |
|---|
| | 13 | This package contains several TaskLibs for Rake which can be |
|---|
| | 14 | used to build Java projects. Jerbil uses RJB[http://raa.ruby-lang.org/project/rjb/] |
|---|
| | 15 | (Ruby-Java-Bridge) to load a Java virtual machine in the ruby process running rake. |
|---|
| | 16 | |
|---|
| | 17 | The jvm is then used to compile Java source files, create javadocs etc. |
|---|
| | 18 | It is not a complete replacement for ant (yet), but has some significant advantages as it |
|---|
| | 19 | is easily scriptable. The main focus at the moment are small to medium-sized projects using |
|---|
| | 20 | testng[http://testng.org] and hibernate[http://hibernate.org]. |
|---|
| | 21 | |
|---|
| | 22 | == Requirements |
|---|
| | 23 | |
|---|
| | 24 | Jerbil requires rjb and JDK 1.5. The JAVA_HOME environment variable needs to point to the |
|---|
| | 25 | installed JDK. |
|---|
| | 26 | |
|---|
| | 27 | == Installation |
|---|
| | 28 | |
|---|
| | 29 | % gem install jerbil --source http://code.trampolinesystems.com |
|---|
| | 30 | |
|---|
| | 31 | Jerbil might become an 'official' rubygem at some later point. Some tasks require additional |
|---|
| | 32 | jar files, for example Jerbil::TestNG::TestNGTask. |
|---|
| | 33 | |
|---|
| | 34 | The source code is available via anon svn: http://svn.trampolinesystems.com/jerbil/ |
|---|
| | 35 | |
|---|
| | 36 | == Example |
|---|
| | 37 | |
|---|
| | 38 | See the example/ subdirectory in the repository. |
|---|
| | 39 | |
|---|
| | 40 | % svn co http://svn.trampolinesystems.com/jerbil/trunk/example |
|---|
| | 41 | |
|---|
| | 42 | == Advantages over ant |
|---|
| | 43 | |
|---|
| | 44 | Well, it's based on Ruby :) Additionally, RJB allows ruby classes to implement |
|---|
| | 45 | |
|---|
| | 46 | == FAQ |
|---|
| | 47 | |
|---|
| | 48 | See JerbilFAQ[http://code.trampolinesystems.com/jerbil/wiki/JerbilFAQ]. |
|---|
| | 49 | |
|---|
| | 50 | == License |
|---|
| | 51 | |
|---|
| | 52 | Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except |
|---|
| | 53 | in compliance with the License. You may obtain a copy of the License at |
|---|
| | 54 | |
|---|
| | 55 | http://www.apache.org/licenses/LICENSE-2.0 |
|---|
| | 56 | |
|---|
| | 57 | Unless required by applicable law or agreed to in writing, software distributed under the License |
|---|
| | 58 | is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express |
|---|
| | 59 | or implied. See the License for the specific language governing permissions and limitations under |
|---|
| | 60 | the License. |
|---|