diff --git a/bin/rdoc b/bin/rdoc index 9b0dab095fb..de4528254e1 100755 --- a/bin/rdoc +++ b/bin/rdoc @@ -1,4 +1,4 @@ -#!/Users/headius/projects/jruby/bin/jruby +#!/usr/bin/env jruby # # This file was generated by RubyGems. # diff --git a/bin/ri b/bin/ri index d1dcdc3e865..743a02ee6be 100755 --- a/bin/ri +++ b/bin/ri @@ -1,4 +1,4 @@ -#!/Users/headius/projects/jruby/bin/jruby +#!/usr/bin/env jruby # # This file was generated by RubyGems. # diff --git a/src/org/jruby/runtime/load/LoadService.java b/src/org/jruby/runtime/load/LoadService.java index 8eef4d49bd7..1031a9d368e 100644 --- a/src/org/jruby/runtime/load/LoadService.java +++ b/src/org/jruby/runtime/load/LoadService.java @@ -1061,11 +1061,14 @@ protected LoadServiceResource tryResourceFromLoadPathOrURL(SearchState state, St } } else { boolean looksLikeJarURL = loadPathLooksLikeJarURL(loadPathEntry); + boolean looksLikeClasspathURL = loadPathLooksLikeClasspathURL(loadPathEntry); for (String suffix : suffixType.getSuffixes()) { String namePlusSuffix = baseName + suffix; if (looksLikeJarURL) { foundResource = tryResourceFromJarURLWithLoadPath(namePlusSuffix, loadPathEntry); + } else if (looksLikeClasspathURL) { + foundResource = findFileInClasspath(loadPathEntry + "/" + namePlusSuffix); } else { foundResource = tryResourceFromLoadPath(namePlusSuffix, loadPathEntry); } @@ -1139,6 +1142,10 @@ protected boolean loadPathLooksLikeJarURL(String loadPathEntry) { return loadPathEntry.startsWith("jar:") || loadPathEntry.endsWith(".jar") || (loadPathEntry.startsWith("file:") && loadPathEntry.indexOf("!/") != -1); } + protected boolean loadPathLooksLikeClasspathURL(String loadPathEntry) { + return loadPathEntry.startsWith("classpath:"); + } + protected LoadServiceResource tryResourceFromLoadPath( String namePlusSuffix,String loadPathEntry) throws RaiseException { LoadServiceResource foundResource = null;