lib/jbundler.rb in jbundler-0.8.0.pre vs lib/jbundler.rb in jbundler-0.8.0
- old
+ new
@@ -16,16 +16,58 @@
# FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
# COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
-require 'jbundler/executor'
+
+require 'jbundler/context'
+require 'jbundler/lock_down'
+
module JBundler
- def self.install( debug = false, verbose = false, options = {} )
- JBundler::Executor.new( debug, verbose ).lock_down( options )
+ def self.context
+ @context ||= JBundler::Context.new
end
- def self.jarfile
- ENV[ 'JBUNDLER_JARFILE' ] || ENV_JAVA[ 'jbundler.jarfile' ] || 'Jarfile'
+ def self.setup_test
+ context.classpath.require_test_classpath
+ context.config
end
+
+ def self.require_jars
+ if context.vendor.vendored?
+ jars = context.vendor.require_jars
+ if context.config.verbose
+ warn "jbundler classpath:"
+ jars.each do |path|
+ warn "\t#{path}"
+ end
+ end
+ elsif context.classpath.exists? && context.jarfile.exists_lock?
+ require 'java'
+ context.classpath.require_classpath
+ if context.config.verbose
+ warn "jbundler classpath:"
+ JBUNDLER_CLASSPATH.each do |path|
+ warn "\t#{path}"
+ end
+ end
+ Jars.no_more_warnings
+ end
+ end
+
+ def self.install( debug = false, verbose = false )
+ jbundler = JBundler::LockDown.new( context.config )
+ msg = jbundler.lock_down( false, debug, verbose )
+ puts msg if msg
+ end
+
+ def self.setup
+ if context.config.skip
+ warn "skip jbundler setup" if context.config.verbose
+ else
+ require_jars
+ end
+ end
end
+
+JBundler.setup