buildr-resolver 0.3.2 → 0.3.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/Gemfile +1 -1
- data/Gemfile.lock +3 -3
- data/README.rdoc +52 -4
- data/VERSION +1 -1
- data/buildr-resolver.gemspec +6 -7
- data/lib/buildr/resolver/java.rb +5 -0
- data/lib/buildr/resolver.rb +25 -4
- data/spec/resolver_spec.rb +14 -0
- metadata +84 -117
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -49,9 +49,9 @@ GEM
|
|
49
49
|
bouncy-castle-java
|
50
50
|
json_pure (1.4.3)
|
51
51
|
minitar (0.5.3)
|
52
|
-
naether (0.3.
|
52
|
+
naether (0.3.2)
|
53
53
|
rjb (= 1.3.3)
|
54
|
-
naether (0.3.
|
54
|
+
naether (0.3.2-java)
|
55
55
|
net-sftp (2.0.4)
|
56
56
|
net-ssh (>= 2.0.9)
|
57
57
|
net-ssh (2.0.23)
|
@@ -71,5 +71,5 @@ DEPENDENCIES
|
|
71
71
|
buildr (>= 1.4.4)
|
72
72
|
bundler (~> 1.0.0)
|
73
73
|
jeweler (~> 1.5.2)
|
74
|
-
naether (= 0.3.
|
74
|
+
naether (= 0.3.2)
|
75
75
|
rspec (~> 1.3.1)
|
data/README.rdoc
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
= Buildr Resolver
|
2
2
|
|
3
|
-
A Java
|
3
|
+
A Java dependency resolver for {Buildr}[https://github.com/apache/buildr] using Maven's {Aether}[https://github.com/sonatype/sonatype-aether] via the wrapper {Naether}[https://github.com/mguymon/naether].
|
4
4
|
|
5
5
|
|
6
6
|
https://github.com/mguymon/buildr-resolver
|
@@ -16,7 +16,7 @@ gem install buildr-resolver
|
|
16
16
|
example +buildfile+
|
17
17
|
|
18
18
|
require 'buildr/resolver'
|
19
|
-
Java.load # must be called before Buildr::Resolver.resolve if using
|
19
|
+
Java.load # must be called before Buildr::Resolver.resolve if not using JRuby due to Rjb startup of JVM by Buildr
|
20
20
|
deps = ['org.apache.activemq:activemq-spring:jar:5.4.2']
|
21
21
|
deps = Buildr::Resolver.resolve( deps )
|
22
22
|
define 'example' do
|
@@ -25,8 +25,8 @@ example +buildfile+
|
|
25
25
|
package :jar
|
26
26
|
end
|
27
27
|
|
28
|
-
The Buildr::Resolver.resolve(
|
29
|
-
all the additional dependencies for it. If you added a
|
28
|
+
The <tt>Buildr::Resolver.resolve(deps)</tt> is what takes the activemq dependency and resolves
|
29
|
+
all the additional dependencies for it. If you added a <tt>puts dep</tt> after <tt>Buildr::Resolver.resolve</tt>, it would output:
|
30
30
|
|
31
31
|
org.apache.activemq:activemq-spring:jar:5.4.2
|
32
32
|
commons-logging:commons-logging-api:jar:1.1
|
@@ -62,6 +62,54 @@ all the additional dependencies for it. If you added a +puts+ +dep+ after Buildr
|
|
62
62
|
org.springframework.osgi:spring-osgi-io:jar:1.2.1
|
63
63
|
|
64
64
|
|
65
|
+
You can also manually exclude dependencies as an optional parameter to <tt>Buildr::Resolver.resolve</tt>. The exclusions
|
66
|
+
are regex matched, so you can pass in only a groupId or the full dependency notation.
|
67
|
+
|
68
|
+
example +buildfile+ with exclusions
|
69
|
+
|
70
|
+
require 'buildr/resolver'
|
71
|
+
Java.load # must be called before Buildr::Resolver.resolve if using Ruby due to Rjb startup of JVM by Buildr
|
72
|
+
deps = ['org.apache.activemq:activemq-spring:jar:5.4.2']
|
73
|
+
excluded = ['commons-logging', 'log4j', 'logkit' ]
|
74
|
+
deps = Buildr::Resolver.resolve( deps, excluded )
|
75
|
+
define 'example' do
|
76
|
+
project.version = '0.1.0'
|
77
|
+
compile.with deps
|
78
|
+
package :jar
|
79
|
+
end
|
80
|
+
|
81
|
+
Will result in the following, excluding commons-logging:commons-logging-api:jar:1.1, commons-logging:commons-logging:jar:1.1
|
82
|
+
log4j:log4j:jar:1.2.12, and logkit:logkit:jar:1.0.1
|
83
|
+
|
84
|
+
org.apache.activemq:activemq-spring:jar:5.4.2
|
85
|
+
org.apache.activemq:activemq-core:jar:5.4.2
|
86
|
+
org.apache.geronimo.specs:geronimo-jms_1.1_spec:jar:1.1.1
|
87
|
+
org.apache.activemq:activeio-core:jar:3.1.2
|
88
|
+
avalon-framework:avalon-framework:jar:4.1.3
|
89
|
+
javax.servlet:servlet-api:jar:2.3
|
90
|
+
org.apache.activemq:kahadb:jar:5.4.2
|
91
|
+
org.apache.activemq.protobuf:activemq-protobuf:jar:1.1
|
92
|
+
org.osgi:org.osgi.core:jar:4.1.0
|
93
|
+
org.apache.geronimo.specs:geronimo-j2ee-management_1.1_spec:jar:1.0.1
|
94
|
+
org.springframework:spring-context:jar:3.0.3.RELEASE
|
95
|
+
org.springframework:spring-aop:jar:3.0.3.RELEASE
|
96
|
+
aopalliance:aopalliance:jar:1.0
|
97
|
+
org.springframework:spring-expression:jar:3.0.3.RELEASE
|
98
|
+
org.springframework:spring-asm:jar:3.0.3.RELEASE
|
99
|
+
commons-net:commons-net:jar:2.0
|
100
|
+
org.jasypt:jasypt:jar:1.6
|
101
|
+
commons-lang:commons-lang:jar:2.1
|
102
|
+
commons-codec:commons-codec:jar:1.1
|
103
|
+
com.ibm.icu:icu4j:jar:4.0.1
|
104
|
+
org.apache.activemq:activemq-pool:jar:5.4.2
|
105
|
+
org.apache.geronimo.specs:geronimo-jta_1.0.1B_spec:jar:1.0.1
|
106
|
+
commons-pool:commons-pool:jar:1.5.4
|
107
|
+
org.springframework:spring-beans:jar:3.0.3.RELEASE
|
108
|
+
org.springframework:spring-core:jar:3.0.3.RELEASE
|
109
|
+
org.springframework:spring-test:jar:3.0.3.RELEASE
|
110
|
+
org.springframework.osgi:spring-osgi-core:jar:1.2.1
|
111
|
+
org.springframework.osgi:spring-osgi-io:jar:1.2.1
|
112
|
+
|
65
113
|
== License
|
66
114
|
|
67
115
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.3.
|
1
|
+
0.3.3
|
data/buildr-resolver.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{buildr-resolver}
|
8
|
-
s.version = "0.3.
|
8
|
+
s.version = "0.3.3"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Michael Guymon"]
|
12
|
-
s.date = %q{2011-03-
|
12
|
+
s.date = %q{2011-03-10}
|
13
13
|
s.description = %q{Java dependency resolver for Buildr using Maven's Aether}
|
14
14
|
s.email = %q{michael.guymon@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -32,31 +32,30 @@ Gem::Specification.new do |s|
|
|
32
32
|
s.licenses = ["Apache"]
|
33
33
|
s.require_paths = ["lib"]
|
34
34
|
s.rubyforge_project = %q{buildr-resolver}
|
35
|
-
s.rubygems_version = %q{1.
|
35
|
+
s.rubygems_version = %q{1.5.2}
|
36
36
|
s.summary = %q{Java dependency resolver for Buildr using Maven's Aether}
|
37
37
|
s.test_files = [
|
38
38
|
"spec/resolver_spec.rb"
|
39
39
|
]
|
40
40
|
|
41
41
|
if s.respond_to? :specification_version then
|
42
|
-
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
43
42
|
s.specification_version = 3
|
44
43
|
|
45
44
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
46
|
-
s.add_runtime_dependency(%q<naether>, ["= 0.3.
|
45
|
+
s.add_runtime_dependency(%q<naether>, ["= 0.3.2"])
|
47
46
|
s.add_runtime_dependency(%q<buildr>, [">= 1.4.4"])
|
48
47
|
s.add_development_dependency(%q<rspec>, ["~> 1.3.1"])
|
49
48
|
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
50
49
|
s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
|
51
50
|
else
|
52
|
-
s.add_dependency(%q<naether>, ["= 0.3.
|
51
|
+
s.add_dependency(%q<naether>, ["= 0.3.2"])
|
53
52
|
s.add_dependency(%q<buildr>, [">= 1.4.4"])
|
54
53
|
s.add_dependency(%q<rspec>, ["~> 1.3.1"])
|
55
54
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
56
55
|
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
57
56
|
end
|
58
57
|
else
|
59
|
-
s.add_dependency(%q<naether>, ["= 0.3.
|
58
|
+
s.add_dependency(%q<naether>, ["= 0.3.2"])
|
60
59
|
s.add_dependency(%q<buildr>, [">= 1.4.4"])
|
61
60
|
s.add_dependency(%q<rspec>, ["~> 1.3.1"])
|
62
61
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
data/lib/buildr/resolver/java.rb
CHANGED
@@ -7,10 +7,15 @@ module Buildr
|
|
7
7
|
class Java
|
8
8
|
include Singleton
|
9
9
|
|
10
|
+
attr_reader :naether
|
11
|
+
|
10
12
|
def initialize
|
13
|
+
|
11
14
|
# Load Naether jar dependencies
|
12
15
|
@naether_jars = [Naether::Bootstrap.naether_jar]
|
13
16
|
@naether_jars = @naether_jars + Buildr.artifacts(Naether.bootstrap_dependencies).each(&:invoke).map(&:to_s)
|
17
|
+
|
18
|
+
@naether = Naether.create_from_jars( @naether_jars )
|
14
19
|
end
|
15
20
|
|
16
21
|
def jar_dependencies
|
data/lib/buildr/resolver.rb
CHANGED
@@ -6,13 +6,31 @@ module Buildr
|
|
6
6
|
module Resolver
|
7
7
|
class << self
|
8
8
|
|
9
|
-
def
|
10
|
-
|
9
|
+
def naether
|
10
|
+
Buildr::Resolver::Java.instance.naether
|
11
|
+
end
|
12
|
+
|
13
|
+
# Resolve dependencies for an array of dependencies
|
14
|
+
#
|
15
|
+
# excludes is an array of dependencies to exclude
|
16
|
+
# repos is an array of {:url => '', :username => '', :password => '' } of additional remote repos
|
17
|
+
# with authentication
|
18
|
+
def resolve( dependencies, excludes=[], repos = [] )
|
11
19
|
if Buildr.repositories.remote.size > 0
|
12
20
|
naether.clear_remote_repositories
|
13
21
|
Buildr.repositories.remote.each do |repo|
|
14
22
|
naether.add_remote_repository( repo )
|
15
23
|
end
|
24
|
+
|
25
|
+
unless repos.nil?
|
26
|
+
unless repos.is_a? Array
|
27
|
+
repos = [repos]
|
28
|
+
end
|
29
|
+
|
30
|
+
repos.each do |repo|
|
31
|
+
naether.add_remote_repository( repo[:url], repo[:username], repo[:password] )
|
32
|
+
end
|
33
|
+
end
|
16
34
|
end
|
17
35
|
|
18
36
|
naether.local_repo_path = Repositories.instance.local
|
@@ -34,8 +52,11 @@ module Buildr
|
|
34
52
|
end
|
35
53
|
|
36
54
|
def deploy_artifact( notation, file_path, url, opts = {} )
|
37
|
-
naether
|
38
|
-
|
55
|
+
naether.deploy_artifact( notation, file_path, url, opts )
|
56
|
+
end
|
57
|
+
|
58
|
+
def write_pom( notation, file_path )
|
59
|
+
naether.write_pom( notation, file_path )
|
39
60
|
end
|
40
61
|
end
|
41
62
|
end
|
data/spec/resolver_spec.rb
CHANGED
@@ -31,5 +31,19 @@ describe Buildr::Resolver do
|
|
31
31
|
Buildr::Resolver.deploy_artifact( "test:test:jar:1.12", Naether::Bootstrap.naether_jar, 'file:tmp/test-repo' )
|
32
32
|
File.exists?('tmp/test-repo/test/test/1.12/test-1.12.jar').should be_true
|
33
33
|
end
|
34
|
+
|
35
|
+
it "should write a pom" do
|
36
|
+
unless File.exists? 'tmp'
|
37
|
+
FileUtils::mkdir 'tmp'
|
38
|
+
end
|
39
|
+
Buildr::Resolver.resolve( ['ch.qos.logback:logback-classic:jar:0.9.24'] )
|
40
|
+
Buildr::Resolver.write_pom( "buildr-resolver:buildr-resolver:jar:45.45", "tmp/pom.xml" )
|
41
|
+
File.exists?( 'tmp/pom.xml' ).should be_true
|
42
|
+
|
43
|
+
xml = IO.read( 'tmp/pom.xml' )
|
44
|
+
xml.should match /.+ch.qos.logback<\/groupId>\s+<artifactId>logback-core<\/artifactId>\s+<version>0.9.24.+/
|
45
|
+
xml.should match /.+org.slf4j<\/groupId>\s+<artifactId>slf4j-api<\/artifactId>\s+<version>1.6.0.+/
|
46
|
+
|
47
|
+
end
|
34
48
|
end
|
35
49
|
end
|
metadata
CHANGED
@@ -1,103 +1,73 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: buildr-resolver
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 3
|
9
|
-
- 2
|
10
|
-
version: 0.3.2
|
4
|
+
prerelease:
|
5
|
+
version: 0.3.3
|
11
6
|
platform: ruby
|
12
7
|
authors:
|
13
|
-
- Michael Guymon
|
8
|
+
- Michael Guymon
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
12
|
|
18
|
-
date: 2011-03-
|
13
|
+
date: 2011-03-10 00:00:00 -05:00
|
19
14
|
default_executable:
|
20
15
|
dependencies:
|
21
|
-
- !ruby/object:Gem::Dependency
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
hash: 23
|
78
|
-
segments:
|
79
|
-
- 1
|
80
|
-
- 0
|
81
|
-
- 0
|
82
|
-
version: 1.0.0
|
83
|
-
requirement: *id004
|
84
|
-
type: :development
|
85
|
-
- !ruby/object:Gem::Dependency
|
86
|
-
prerelease: false
|
87
|
-
name: jeweler
|
88
|
-
version_requirements: &id005 !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
|
-
requirements:
|
91
|
-
- - ~>
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
hash: 7
|
94
|
-
segments:
|
95
|
-
- 1
|
96
|
-
- 5
|
97
|
-
- 2
|
98
|
-
version: 1.5.2
|
99
|
-
requirement: *id005
|
100
|
-
type: :development
|
16
|
+
- !ruby/object:Gem::Dependency
|
17
|
+
name: naether
|
18
|
+
version_requirements: &id001 !ruby/object:Gem::Requirement
|
19
|
+
none: false
|
20
|
+
requirements:
|
21
|
+
- - "="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 0.3.2
|
24
|
+
requirement: *id001
|
25
|
+
prerelease: false
|
26
|
+
type: :runtime
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: buildr
|
29
|
+
version_requirements: &id002 !ruby/object:Gem::Requirement
|
30
|
+
none: false
|
31
|
+
requirements:
|
32
|
+
- - ">="
|
33
|
+
- !ruby/object:Gem::Version
|
34
|
+
version: 1.4.4
|
35
|
+
requirement: *id002
|
36
|
+
prerelease: false
|
37
|
+
type: :runtime
|
38
|
+
- !ruby/object:Gem::Dependency
|
39
|
+
name: rspec
|
40
|
+
version_requirements: &id003 !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 1.3.1
|
46
|
+
requirement: *id003
|
47
|
+
prerelease: false
|
48
|
+
type: :development
|
49
|
+
- !ruby/object:Gem::Dependency
|
50
|
+
name: bundler
|
51
|
+
version_requirements: &id004 !ruby/object:Gem::Requirement
|
52
|
+
none: false
|
53
|
+
requirements:
|
54
|
+
- - ~>
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: 1.0.0
|
57
|
+
requirement: *id004
|
58
|
+
prerelease: false
|
59
|
+
type: :development
|
60
|
+
- !ruby/object:Gem::Dependency
|
61
|
+
name: jeweler
|
62
|
+
version_requirements: &id005 !ruby/object:Gem::Requirement
|
63
|
+
none: false
|
64
|
+
requirements:
|
65
|
+
- - ~>
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: 1.5.2
|
68
|
+
requirement: *id005
|
69
|
+
prerelease: false
|
70
|
+
type: :development
|
101
71
|
description: Java dependency resolver for Buildr using Maven's Aether
|
102
72
|
email: michael.guymon@gmail.com
|
103
73
|
executables: []
|
@@ -105,52 +75,49 @@ executables: []
|
|
105
75
|
extensions: []
|
106
76
|
|
107
77
|
extra_rdoc_files:
|
108
|
-
- LICENSE
|
109
|
-
- README.rdoc
|
78
|
+
- LICENSE
|
79
|
+
- README.rdoc
|
110
80
|
files:
|
111
|
-
- Gemfile
|
112
|
-
- Gemfile.lock
|
113
|
-
- LICENSE
|
114
|
-
- README.rdoc
|
115
|
-
- Rakefile
|
116
|
-
- VERSION
|
117
|
-
- buildr-resolver.gemspec
|
118
|
-
- lib/buildr/resolver.rb
|
119
|
-
- lib/buildr/resolver/java.rb
|
120
|
-
- spec/resolver_spec.rb
|
81
|
+
- Gemfile
|
82
|
+
- Gemfile.lock
|
83
|
+
- LICENSE
|
84
|
+
- README.rdoc
|
85
|
+
- Rakefile
|
86
|
+
- VERSION
|
87
|
+
- buildr-resolver.gemspec
|
88
|
+
- lib/buildr/resolver.rb
|
89
|
+
- lib/buildr/resolver/java.rb
|
90
|
+
- spec/resolver_spec.rb
|
121
91
|
has_rdoc: true
|
122
92
|
homepage: http://github.com/mguymon/buildr-resolver
|
123
93
|
licenses:
|
124
|
-
- Apache
|
94
|
+
- Apache
|
125
95
|
post_install_message:
|
126
96
|
rdoc_options: []
|
127
97
|
|
128
98
|
require_paths:
|
129
|
-
- lib
|
99
|
+
- lib
|
130
100
|
required_ruby_version: !ruby/object:Gem::Requirement
|
131
101
|
none: false
|
132
102
|
requirements:
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
103
|
+
- - ">="
|
104
|
+
- !ruby/object:Gem::Version
|
105
|
+
hash: 2
|
106
|
+
segments:
|
107
|
+
- 0
|
108
|
+
version: "0"
|
139
109
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
140
110
|
none: false
|
141
111
|
requirements:
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
segments:
|
146
|
-
- 0
|
147
|
-
version: "0"
|
112
|
+
- - ">="
|
113
|
+
- !ruby/object:Gem::Version
|
114
|
+
version: "0"
|
148
115
|
requirements: []
|
149
116
|
|
150
117
|
rubyforge_project: buildr-resolver
|
151
|
-
rubygems_version: 1.
|
118
|
+
rubygems_version: 1.5.2
|
152
119
|
signing_key:
|
153
120
|
specification_version: 3
|
154
121
|
summary: Java dependency resolver for Buildr using Maven's Aether
|
155
122
|
test_files:
|
156
|
-
- spec/resolver_spec.rb
|
123
|
+
- spec/resolver_spec.rb
|