jbundler 0.9.3 → 0.9.4
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.
- checksums.yaml +5 -5
- data/Gemfile.lock +13 -13
- data/Readme.md +67 -34
- data/spec/project/settings.xml +0 -0
- metadata +19 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 3bf1c75c37037220f7f47c4a02205fcfa814ef8cab027fa45ef111cca5052f9e
|
4
|
+
data.tar.gz: dc85176e4dc8239f3cfcdaa9006d7265d62d793fcb930c9269ae5f89e969bee1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4663268fac15d1938833a253276280f652a8c82e039d7103100e7132d764e2e6371d27e188fc133d564bc9ef922fb74165da4c1c41d670a0e21e49d6ccdc43e8
|
7
|
+
data.tar.gz: eb2d73a9246bb8f5a5b30c967868e73db16eb08aa6717bff993737b5cc65043503410a06f6e8698099abda97d67bd705ba529606940ee22ac3b97642eb15f167
|
data/Gemfile.lock
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
jbundler (0.9.
|
5
|
-
bundler (
|
4
|
+
jbundler (0.9.4)
|
5
|
+
bundler (> 1.5, < 3.0.0)
|
6
6
|
jar-dependencies (~> 0.3)
|
7
|
-
maven-tools (~> 1.
|
7
|
+
maven-tools (~> 1.1)
|
8
8
|
ruby-maven (~> 3.3, >= 3.3.8)
|
9
9
|
|
10
10
|
GEM
|
@@ -19,16 +19,16 @@ GEM
|
|
19
19
|
descendants_tracker (0.0.4)
|
20
20
|
thread_safe (~> 0.3, >= 0.3.1)
|
21
21
|
equalizer (0.0.11)
|
22
|
-
ice_nine (0.11.
|
23
|
-
jar-dependencies (0.
|
24
|
-
maven-tools (1.
|
22
|
+
ice_nine (0.11.2)
|
23
|
+
jar-dependencies (0.4.0)
|
24
|
+
maven-tools (1.1.6)
|
25
25
|
virtus (~> 1.0)
|
26
|
-
minitest (5.
|
27
|
-
rake (10.
|
28
|
-
ruby-maven (3.3.
|
29
|
-
ruby-maven-libs (~> 3.3.
|
30
|
-
ruby-maven-libs (3.3.
|
31
|
-
thread_safe (0.3.
|
26
|
+
minitest (5.14.0)
|
27
|
+
rake (10.5.0)
|
28
|
+
ruby-maven (3.3.12)
|
29
|
+
ruby-maven-libs (~> 3.3.9)
|
30
|
+
ruby-maven-libs (3.3.9)
|
31
|
+
thread_safe (0.3.6-java)
|
32
32
|
virtus (1.0.5)
|
33
33
|
axiom-types (~> 0.1)
|
34
34
|
coercible (~> 1.0)
|
@@ -45,4 +45,4 @@ DEPENDENCIES
|
|
45
45
|
rake (~> 10.0)
|
46
46
|
|
47
47
|
BUNDLED WITH
|
48
|
-
1.
|
48
|
+
2.1.4
|
data/Readme.md
CHANGED
@@ -1,8 +1,8 @@
|
|
1
|
-
# jbundler
|
1
|
+
# jbundler
|
2
2
|
|
3
|
-
* [](http://travis-ci.org/mkristian/jbundler)
|
4
4
|
|
5
|
-
|
5
|
+
Manage jar dependencies similar to how **bundler** manages gem dependencies:
|
6
6
|
|
7
7
|
* the DSL mimics the one from bundler
|
8
8
|
* you can use maven-like version declarations or rubygems/bundler version ranges
|
@@ -11,58 +11,91 @@ manage jar dependencies similar to how **bundler** manages gem dependencies:
|
|
11
11
|
|
12
12
|
differences compared to **bundler**
|
13
13
|
|
14
|
-
* it is just a development gem - no need for it during runtime. just add ```Jars.require_jars_lock!``` to your code and for older JRuby versions add ```gem 'jar-dependencies', '~> 0.1.11'``` as a runtime dependency.
|
15
14
|
* you need to run ```bundle install``` first if any of the gems have jar dependencies.
|
16
|
-
* all one command ```jbundle```, see ```jbundle
|
15
|
+
* all one command ```jbundle```, see ```jbundle help``` on the possible options and how to update a single jar, etc.
|
17
16
|
|
18
|
-
##
|
17
|
+
## Get started
|
19
18
|
|
20
|
-
|
19
|
+
Install JBundler with:
|
20
|
+
```bash
|
21
|
+
jruby -S gem install jbundler
|
22
|
+
```
|
21
23
|
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
24
|
+
First, create a **Jarfile**, something like:
|
25
|
+
```bash
|
26
|
+
jar 'org.yaml:snakeyaml', '1.14'
|
27
|
+
jar 'org.slf4j:slf4j-simple', '>1.1'
|
28
|
+
```
|
29
|
+
|
30
|
+
Install jar dependencies
|
31
|
+
```bash
|
32
|
+
jruby -S jbundle install
|
33
|
+
```
|
34
|
+
|
35
|
+
Loading the jar files
|
36
|
+
```bash
|
37
|
+
require 'jbundler'
|
38
|
+
```
|
39
|
+
|
40
|
+
It will add all the jar dependencies in the java classpath from the `Jarfile.lock`.
|
28
41
|
|
29
42
|
### Jarfile
|
30
43
|
|
31
|
-
|
44
|
+
More info about the **[Jarfile](https://github.com/torquebox/maven-tools/wiki/Jarfile)** and about [versions](https://github.com/torquebox/maven-tools/wiki/Versions).
|
32
45
|
|
33
|
-
|
46
|
+
For adding a maven repository see [Jarfile](https://github.com/torquebox/maven-tools/wiki/Jarfile).
|
34
47
|
|
35
|
-
|
48
|
+
## Building the jbundler gem
|
36
49
|
|
37
|
-
|
50
|
+
Running the integration test
|
38
51
|
|
39
|
-
|
52
|
+
```bash
|
53
|
+
./mvnw verify
|
54
|
+
./mvnw clean verify
|
55
|
+
```
|
56
|
+
or a single integration test
|
57
|
+
```bash
|
58
|
+
./mvnw verify -Dinvoker.test=running_rspec_via_rake
|
59
|
+
./mvnw clean verify -Dinvoker.test=running_rspec_via_rake
|
60
|
+
```
|
40
61
|
|
41
|
-
|
62
|
+
Building the gem (see ./pkg)
|
63
|
+
```bash
|
64
|
+
./mvnw package -Dinvoker.skip
|
65
|
+
```
|
42
66
|
|
43
|
-
|
67
|
+
Or just
|
68
|
+
```bash
|
69
|
+
gem build jbundler.gemspec
|
70
|
+
```
|
44
71
|
|
45
|
-
|
72
|
+
## Usage
|
46
73
|
|
47
|
-
|
74
|
+
Here is an example usage of the AliasEvent class from the snakeyaml package
|
48
75
|
|
49
|
-
|
76
|
+
```ruby
|
77
|
+
#test_file.rb
|
78
|
+
require 'jbundler'
|
79
|
+
require 'java'
|
50
80
|
|
51
|
-
|
81
|
+
java_import 'org.yaml.snakeyaml.events.AliasEvent'
|
52
82
|
|
53
|
-
|
83
|
+
class TestClass
|
84
|
+
def my_method
|
85
|
+
puts AliasEvent.methods
|
86
|
+
end
|
87
|
+
end
|
54
88
|
|
55
|
-
|
56
|
-
|
57
|
-
bundle exec info.rb
|
89
|
+
TestClass.new.my_method
|
90
|
+
```
|
58
91
|
|
59
|
-
##
|
92
|
+
## Limitations
|
60
93
|
|
61
|
-
|
94
|
+
Since the version resolution happens in two steps - first the gems, and then the jars/poms - it is possible in case of a failure that there is a valid gems/jars version resolution which satisfies all version contraints. So there is plenty of space for improvements (like maven could resolve the gems as well, etc).
|
62
95
|
|
63
|
-
|
96
|
+
## Special thanks
|
64
97
|
|
65
|
-
|
98
|
+
The whole project actually started with a controversial discussion on a [pull request on bundler](https://github.com/carlhuda/bundler/pull/1683). This very same pull request were the starting point of that project here. Probably by now there is not much left of the original code, but many thanks to [ANithian](https://github.com/ANithian) for giving the seed of that project.
|
66
99
|
|
67
100
|
License
|
68
101
|
-------
|
@@ -78,7 +111,7 @@ Contributing
|
|
78
111
|
4. Push to the branch (`git push origin my-new-feature`)
|
79
112
|
5. Create new Pull Request
|
80
113
|
|
81
|
-
|
114
|
+
Meta-fu
|
82
115
|
-------
|
83
116
|
|
84
|
-
enjoy :)
|
117
|
+
enjoy :)
|
File without changes
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jbundler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Christian Meier
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-05-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: maven-tools
|
@@ -48,16 +48,22 @@ dependencies:
|
|
48
48
|
name: bundler
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
50
50
|
requirements:
|
51
|
-
- - "
|
51
|
+
- - ">"
|
52
52
|
- !ruby/object:Gem::Version
|
53
53
|
version: '1.5'
|
54
|
+
- - "<"
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: 3.0.0
|
54
57
|
type: :runtime
|
55
58
|
prerelease: false
|
56
59
|
version_requirements: !ruby/object:Gem::Requirement
|
57
60
|
requirements:
|
58
|
-
- - "
|
61
|
+
- - ">"
|
59
62
|
- !ruby/object:Gem::Version
|
60
63
|
version: '1.5'
|
64
|
+
- - "<"
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: 3.0.0
|
61
67
|
- !ruby/object:Gem::Dependency
|
62
68
|
name: jar-dependencies
|
63
69
|
requirement: !ruby/object:Gem::Requirement
|
@@ -100,8 +106,10 @@ dependencies:
|
|
100
106
|
- - "~>"
|
101
107
|
- !ruby/object:Gem::Version
|
102
108
|
version: '5.3'
|
103
|
-
description:
|
104
|
-
|
109
|
+
description: 'managing jar dependencies with or without bundler. adding bundler like
|
110
|
+
handling of version ranges for jar dependencies.
|
111
|
+
|
112
|
+
'
|
105
113
|
email:
|
106
114
|
- m.kristian@web.de
|
107
115
|
executables:
|
@@ -136,13 +144,14 @@ files:
|
|
136
144
|
- spec/config_spec.rb
|
137
145
|
- spec/pom_spec.rb
|
138
146
|
- spec/project/Settings.xml
|
147
|
+
- spec/project/settings.xml
|
139
148
|
- spec/setup.rb
|
140
149
|
- spec/vendor_spec.rb
|
141
150
|
homepage: https://github.com/mkristian/jbundler
|
142
151
|
licenses:
|
143
152
|
- MIT
|
144
153
|
metadata: {}
|
145
|
-
post_install_message:
|
154
|
+
post_install_message:
|
146
155
|
rdoc_options: []
|
147
156
|
require_paths:
|
148
157
|
- lib
|
@@ -157,9 +166,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
157
166
|
- !ruby/object:Gem::Version
|
158
167
|
version: '0'
|
159
168
|
requirements: []
|
160
|
-
|
161
|
-
|
162
|
-
signing_key:
|
169
|
+
rubygems_version: 3.2.22
|
170
|
+
signing_key:
|
163
171
|
specification_version: 4
|
164
172
|
summary: managing jar dependencies
|
165
173
|
test_files:
|