Skip to content

Commit 4bd87a3

Browse files
committed
Move all main classes to org.jruby.main package
This copies org.jruby.Main and org.jruby.JarBootstrapMain to the org.jruby.main package where we keep other "mains". This is in part to localize mains but also to start removing classes from org.jruby package that don't need to or should not be accessed by users. In this case, we don't recommend using Main to execute JRuby from within an already-running JVM, preferring our embedding APIs or using org.jruby.Ruby directly. JarBootstrapMain is rarely (if ever) used, so we'll also move it alongside other mains. The old classes have been deprecated for removal.
1 parent a890278 commit 4bd87a3

File tree

29 files changed

+753
-614
lines changed

29 files changed

+753
-614
lines changed

antlib/extra.xml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ build jruby-complete.jar
2626
<arg value='-Djruby.home=uri:classloader://META-INF/jruby.home'/>
2727
<arg value='-cp'/>
2828
<arg value='core/target/test-classes:test/target/test-classes:lib/jruby.jar:maven/jruby-stdlib/target/jruby-stdlib-9.0.0.0.jar'/>
29-
<arg value='org.jruby.Main'/>
29+
<arg value='org.jruby.main.Main'/>
3030
<arg value='-I.:test/externals/ruby1.9:test/externals/ruby1.9/ruby'/>
3131
<arg value='-r./test/ruby19_env.rb'/>
3232
<arg value='-rminitest/excludes'/>
@@ -138,7 +138,7 @@ build jruby-complete.jar
138138
<arg value='-Djruby.home=uri:classloader://META-INF/jruby.home'/>
139139
<arg value='-cp'/>
140140
<arg value='core/target/test-classes:test/target/test-classes:maven/jruby-complete/target/jruby-complete-9.0.0.0.jar'/>
141-
<arg value='org.jruby.Main'/>
141+
<arg value='org.jruby.main.Main'/>
142142
<arg value='-I.:test/externals/ruby1.9:test/externals/ruby1.9/ruby'/>
143143
<arg value='-r./test/ruby19_env.rb'/>
144144
<arg value='-rminitest/excludes'/>
@@ -154,7 +154,7 @@ build jruby-complete.jar
154154
<arg value='-Djruby.home=uri:classloader://META-INF/jruby.home'/>
155155
<arg value='-cp'/>
156156
<arg value='core/target/test-classes:test/target/test-classes:lib/jruby.jar:maven/jruby-stdlib/target/jruby-stdlib-9.0.0.0.jar'/>
157-
<arg value='org.jruby.Main'/>
157+
<arg value='org.jruby.main.Main'/>
158158
<arg value='-I.:test/externals/ruby1.9:test/externals/ruby1.9/ruby'/>
159159
<arg value='-r./test/ruby19_env.rb'/>
160160
<arg value='-rminitest/excludes'/>
@@ -170,7 +170,7 @@ build jruby-complete.jar
170170
<arg value='-Djruby.home=uri:classloader://META-INF/jruby.home'/>
171171
<arg value='-cp'/>
172172
<arg value='core/target/test-classes:test/target/test-classes:lib/jruby.jar:maven/jruby-stdlib/target/jruby-stdlib-9.0.0.0.jar'/>
173-
<arg value='org.jruby.Main'/>
173+
<arg value='org.jruby.main.Main'/>
174174
<arg value='-I.:test/externals/ruby1.9:test/externals/ruby1.9/ruby'/>
175175
<arg value='-r./test/ruby19_env.rb'/>
176176
<arg value='-rminitest/excludes'/>
@@ -461,7 +461,7 @@ build jruby-complete.jar
461461
<arg value='-Djruby.home=uri:classloader://META-INF/jruby.home'/>
462462
<arg value='-cp'/>
463463
<arg value='core/target/test-classes:test/target/test-classes:maven/jruby-complete/target/jruby-complete-9.0.0.0.jar'/>
464-
<arg value='org.jruby.Main'/>
464+
<arg value='org.jruby.main.Main'/>
465465
<arg value='-I.:test/externals/ruby1.9:test/externals/ruby1.9/ruby'/>
466466
<arg value='-r./test/ruby19_env.rb'/>
467467
<arg value='-rminitest/excludes'/>

bin/jruby.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,7 @@ echo() {
189189

190190
# ----- Set variable defaults -------------------------------------------------
191191

192-
java_class=org.jruby.Main
192+
java_class=org.jruby.main.Main
193193
JRUBY_SHELL=/bin/sh
194194

195195
# Detect cygwin and mingw environments

core/src/main/java/org/jruby/JarBootstrapMain.java

Lines changed: 3 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -29,31 +29,12 @@
2929
package org.jruby;
3030

3131
/**
32-
* A specialized "main" entry point that assumes it will run a specific file
33-
* (jar-bootstrap.rb) when launching. This allows modifying only the manifest's
34-
* Main-Class and adding this file to create a self-contained executable JRuby
35-
* application.
36-
*
37-
* Example usage:
38-
*
39-
* <pre>
40-
* ~/projects/jruby $ cp lib/jruby.jar myapp.jar
41-
*
42-
* ~/projects/jruby $ cat jar-bootstrap.rb
43-
* puts "hello"
44-
*
45-
* ~/projects/jruby $ jar ufe myapp.jar org.jruby.JarBootstrapMain jar-bootstrap.rb
46-
*
47-
* ~/projects/jruby $ java -jar myapp.jar
48-
* hello
49-
* </pre>
32+
* @deprecated Use {@link org.jruby.main.JarBootstrapMain} instead.
5033
*/
34+
@Deprecated(since = "10.0.3.0", forRemoval = true)
5135
public class JarBootstrapMain {
5236
public static final String JAR_BOOTSTRAP = "classpath:/jar-bootstrap.rb";
5337
public static void main(String[] args) {
54-
String[] newArgs = new String[args.length + 1];
55-
newArgs[0] = JAR_BOOTSTRAP;
56-
System.arraycopy(args, 0, newArgs, 1, args.length);
57-
Main.main(newArgs);
38+
org.jruby.main.JarBootstrapMain.main(args);
5839
}
5940
}

0 commit comments

Comments
 (0)