lock_jar 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.rdoc +4 -1
- data/VERSION +1 -1
- data/lib/lock_jar/runtime.rb +38 -3
- data/lib/lock_jar.rb +4 -4
- data/lock_jar.gemspec +1 -1
- metadata +3 -3
data/README.rdoc
CHANGED
@@ -102,6 +102,8 @@ or directly load all Jars into the classpath
|
|
102
102
|
require 'lock_jars'
|
103
103
|
|
104
104
|
jars = LockJar.load
|
105
|
+
|
106
|
+
Do not forget, if you change your Jarfile, you have to re-generate the Jarfile.lock.
|
105
107
|
|
106
108
|
|
107
109
|
=== Buildr Integration
|
@@ -119,7 +121,8 @@ and a task per project to generate the lockfile for a single project
|
|
119
121
|
|
120
122
|
buildr <app>:<project>:lock_jar:lock
|
121
123
|
|
122
|
-
The resolved dependencies are automatically added to the classpath for compiling and testing.
|
124
|
+
The resolved dependencies are automatically added to the classpath for compiling and testing. Do not forget, if you change the lock_jar
|
125
|
+
definitions, you have to rerun the lock_jar:lock task.
|
123
126
|
|
124
127
|
|
125
128
|
==== Example
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.3
|
data/lib/lock_jar/runtime.rb
CHANGED
@@ -79,18 +79,53 @@ module LockJar
|
|
79
79
|
dependencies
|
80
80
|
end
|
81
81
|
|
82
|
-
def load( jarfile_lock = "Jarfile.lock", scopes = ['compile', 'runtime'] )
|
82
|
+
def load( jarfile_lock = "Jarfile.lock", scopes = ['compile', 'runtime'], &blk )
|
83
|
+
dependencies = []
|
84
|
+
|
85
|
+
if jarfile_lock
|
86
|
+
if File.exists?(jarfile_lock)
|
87
|
+
dependencies += read_jarfile( jarfile_lock, scopes )
|
88
|
+
else
|
89
|
+
warn( "LockJar jarfile_lock not found: #{jarfile_lock}" )
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
if blk
|
94
|
+
dsl = LockJar::Dsl.evaluate(&blk)
|
95
|
+
dependencies += read_dsl( dsl, scopes )
|
96
|
+
end
|
97
|
+
|
98
|
+
dependencies.uniq!
|
99
|
+
|
100
|
+
@resolver.load_jars_to_classpath( dependencies )
|
101
|
+
end
|
102
|
+
|
103
|
+
private
|
104
|
+
def read_jarfile( jarfile_lock, scopes )
|
83
105
|
lock_data = YAML.load_file( jarfile_lock )
|
84
106
|
|
85
107
|
dependencies = []
|
86
|
-
|
108
|
+
|
87
109
|
scopes.each do |scope|
|
88
110
|
if lock_data['scopes'][scope]
|
89
111
|
dependencies += lock_data['scopes'][scope]['resolved_dependencies']
|
90
112
|
end
|
91
113
|
end
|
92
114
|
|
93
|
-
|
115
|
+
dependencies
|
116
|
+
end
|
117
|
+
|
118
|
+
def read_dsl( dsl, scopes )
|
119
|
+
|
120
|
+
dependencies = []
|
121
|
+
|
122
|
+
dsl.notations.each do |scope,notations|
|
123
|
+
if notations && notations.size > 0
|
124
|
+
dependencies += notations
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
@resolver.resolve( dependencies )
|
94
129
|
end
|
95
130
|
end
|
96
131
|
end
|
data/lib/lock_jar.rb
CHANGED
@@ -31,15 +31,15 @@ module LockJar
|
|
31
31
|
# List jars for an array of scope in a lockfile
|
32
32
|
#
|
33
33
|
# Accepts path to the lockfile, array of scopes, and hash of options to configure LockJar
|
34
|
-
def self.list( lockfile = 'Jarfile.lock', scopes = ['compile', 'runtime'], opts = {} )
|
34
|
+
def self.list( lockfile = 'Jarfile.lock', scopes = ['compile', 'runtime'], opts = {}, &blk )
|
35
35
|
Runtime.new( opts ).list( lockfile, scopes )
|
36
36
|
end
|
37
37
|
|
38
38
|
# Load jars for an array of scopes in a lockfile
|
39
39
|
#
|
40
40
|
# Accepts a path to the lockfile, array scopes, and hash of optiosn to configure LockJar
|
41
|
-
def self.load( lockfile = 'Jarfile.lock', scopes = ['compile', 'runtime'], opts = {} )
|
42
|
-
Runtime.new( opts ).load( lockfile, scopes )
|
41
|
+
def self.load( lockfile = 'Jarfile.lock', scopes = ['compile', 'runtime'], opts = {}, &blk )
|
42
|
+
Runtime.new( opts ).load( lockfile, scopes, &blk )
|
43
43
|
end
|
44
|
-
|
44
|
+
|
45
45
|
end
|
data/lock_jar.gemspec
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lock_jar
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 25
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 3
|
10
|
+
version: 0.0.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Michael Guymon
|