propane 3.3.1-java → 3.4.0-java
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.mvn/wrapper/MavenWrapperDownloader.java +117 -0
- data/.mvn/wrapper/maven-wrapper.properties +2 -3
- data/.travis.yml +9 -0
- data/CHANGELOG.md +7 -5
- data/README.md +1 -1
- data/Rakefile +8 -21
- data/lib/propane/native_folder.rb +16 -11
- data/lib/propane/version.rb +1 -1
- data/mvnw +127 -51
- data/mvnw.cmd +182 -145
- data/pom.rb +50 -48
- data/pom.xml +15 -6
- data/propane.gemspec +3 -3
- data/src/main/java/monkstone/vecmath/vec2/Vec2.java +1 -1
- data/src/main/java/monkstone/vecmath/vec3/Vec3.java +2 -2
- data/src/main/java/processing/awt/PGraphicsJava2D.java +1616 -1609
- data/src/main/java/processing/awt/PShapeJava2D.java +273 -265
- data/src/main/java/processing/awt/PSurfaceAWT.java +830 -817
- data/src/main/java/processing/core/PApplet.java +3990 -3990
- data/src/main/java/processing/core/PGraphics.java +37 -37
- data/src/main/java/processing/core/PImage.java +9 -9
- data/src/main/java/processing/core/PMatrix2D.java +6 -0
- data/src/main/java/processing/core/PShape.java +2 -2
- data/src/main/java/processing/core/PShapeOBJ.java +425 -409
- data/src/main/java/processing/core/PShapeSVG.java +167 -159
- data/src/main/java/processing/core/PSurfaceNone.java +10 -0
- data/src/main/java/processing/core/ThinkDifferent.java +7 -14
- data/src/main/java/processing/event/Event.java +7 -6
- metadata +9 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0a17549b4cc5bcc10bb764cca572641ea1cc26e03f3634e6ca6765566d74e31a
|
4
|
+
data.tar.gz: 365bcb651c4a64e0218c35c21ee08b7e62c7dd55523d4fc6d1a4552bd8bbc636
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6cfc69cad0fe6d1d3a2e663ae267bb8057c4552702133554febb911aec0495cfbe231801489419e2b1d85ce1d4e55e87c2e66d69d3606d1d864a5fc074fa84c5
|
7
|
+
data.tar.gz: 298859b0bf5f3ac80796b85d306fb0f1f20b99c28857c469a0bd7ae896abb81d96d74b4a8c3105a7ccd26345ca4569659d695c22322bcfa07b90c880147e138b
|
@@ -0,0 +1,117 @@
|
|
1
|
+
/*
|
2
|
+
* Copyright 2007-present the original author or authors.
|
3
|
+
*
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
* you may not use this file except in compliance with the License.
|
6
|
+
* You may obtain a copy of the License at
|
7
|
+
*
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
*
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
* See the License for the specific language governing permissions and
|
14
|
+
* limitations under the License.
|
15
|
+
*/
|
16
|
+
import java.net.*;
|
17
|
+
import java.io.*;
|
18
|
+
import java.nio.channels.*;
|
19
|
+
import java.util.Properties;
|
20
|
+
|
21
|
+
public class MavenWrapperDownloader {
|
22
|
+
|
23
|
+
private static final String WRAPPER_VERSION = "0.5.5";
|
24
|
+
/**
|
25
|
+
* Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
|
26
|
+
*/
|
27
|
+
private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
|
28
|
+
+ WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
|
29
|
+
|
30
|
+
/**
|
31
|
+
* Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
|
32
|
+
* use instead of the default one.
|
33
|
+
*/
|
34
|
+
private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
|
35
|
+
".mvn/wrapper/maven-wrapper.properties";
|
36
|
+
|
37
|
+
/**
|
38
|
+
* Path where the maven-wrapper.jar will be saved to.
|
39
|
+
*/
|
40
|
+
private static final String MAVEN_WRAPPER_JAR_PATH =
|
41
|
+
".mvn/wrapper/maven-wrapper.jar";
|
42
|
+
|
43
|
+
/**
|
44
|
+
* Name of the property which should be used to override the default download url for the wrapper.
|
45
|
+
*/
|
46
|
+
private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
|
47
|
+
|
48
|
+
public static void main(String args[]) {
|
49
|
+
System.out.println("- Downloader started");
|
50
|
+
File baseDirectory = new File(args[0]);
|
51
|
+
System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
|
52
|
+
|
53
|
+
// If the maven-wrapper.properties exists, read it and check if it contains a custom
|
54
|
+
// wrapperUrl parameter.
|
55
|
+
File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
|
56
|
+
String url = DEFAULT_DOWNLOAD_URL;
|
57
|
+
if(mavenWrapperPropertyFile.exists()) {
|
58
|
+
FileInputStream mavenWrapperPropertyFileInputStream = null;
|
59
|
+
try {
|
60
|
+
mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
|
61
|
+
Properties mavenWrapperProperties = new Properties();
|
62
|
+
mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
|
63
|
+
url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
|
64
|
+
} catch (IOException e) {
|
65
|
+
System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
|
66
|
+
} finally {
|
67
|
+
try {
|
68
|
+
if(mavenWrapperPropertyFileInputStream != null) {
|
69
|
+
mavenWrapperPropertyFileInputStream.close();
|
70
|
+
}
|
71
|
+
} catch (IOException e) {
|
72
|
+
// Ignore ...
|
73
|
+
}
|
74
|
+
}
|
75
|
+
}
|
76
|
+
System.out.println("- Downloading from: " + url);
|
77
|
+
|
78
|
+
File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
|
79
|
+
if(!outputFile.getParentFile().exists()) {
|
80
|
+
if(!outputFile.getParentFile().mkdirs()) {
|
81
|
+
System.out.println(
|
82
|
+
"- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
|
83
|
+
}
|
84
|
+
}
|
85
|
+
System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
|
86
|
+
try {
|
87
|
+
downloadFileFromURL(url, outputFile);
|
88
|
+
System.out.println("Done");
|
89
|
+
System.exit(0);
|
90
|
+
} catch (Throwable e) {
|
91
|
+
System.out.println("- Error downloading");
|
92
|
+
e.printStackTrace();
|
93
|
+
System.exit(1);
|
94
|
+
}
|
95
|
+
}
|
96
|
+
|
97
|
+
private static void downloadFileFromURL(String urlString, File destination) throws Exception {
|
98
|
+
if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
|
99
|
+
String username = System.getenv("MVNW_USERNAME");
|
100
|
+
char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
|
101
|
+
Authenticator.setDefault(new Authenticator() {
|
102
|
+
@Override
|
103
|
+
protected PasswordAuthentication getPasswordAuthentication() {
|
104
|
+
return new PasswordAuthentication(username, password);
|
105
|
+
}
|
106
|
+
});
|
107
|
+
}
|
108
|
+
URL website = new URL(urlString);
|
109
|
+
ReadableByteChannel rbc;
|
110
|
+
rbc = Channels.newChannel(website.openStream());
|
111
|
+
FileOutputStream fos = new FileOutputStream(destination);
|
112
|
+
fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
|
113
|
+
fos.close();
|
114
|
+
rbc.close();
|
115
|
+
}
|
116
|
+
|
117
|
+
}
|
@@ -1,3 +1,2 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
1
|
+
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.1/apache-maven-3.6.1-bin.zip
|
2
|
+
wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.5/maven-wrapper-0.5.5.jar
|
data/.travis.yml
ADDED
data/CHANGELOG.md
CHANGED
@@ -1,8 +1,10 @@
|
|
1
|
+
**v3.4.0** Experimental refactoring of ThinkDifferent, and some other processing classes
|
2
|
+
|
1
3
|
**v3.3.1** Reflection makes refactoring a nightmare DesktopHandler => ThinkDifferent
|
2
4
|
|
3
|
-
**v3.3.0** Compile with jdk12
|
5
|
+
**v3.3.0** Compile with jdk12\. Changed AppRender to GfxRender (PGraphics instead of PApplet). Attempt fix for macOS icons
|
4
6
|
|
5
|
-
**v3.2.0** Now is the time for some serious refactoring for jdk11
|
7
|
+
**v3.2.0** Now is the time for some serious refactoring for jdk11\. Might even work on MacOS and Windows, ahead of vanilla processing.
|
6
8
|
|
7
9
|
**v2.9.1** Attempt to bring 64 bit Windows users to party. Use non versioned jogl/opengl jars from processing distro, including processing.org apple.jar in case it's needed, MacOS users are being very opaque on this.
|
8
10
|
|
@@ -26,7 +28,7 @@
|
|
26
28
|
|
27
29
|
**v2.6.1** Bump processing version, bump recommended jruby version.
|
28
30
|
|
29
|
-
**v2.6.0** Refactored `LibraryLoader` knows less about `Library` class.
|
31
|
+
**v2.6.0** Refactored `LibraryLoader` knows less about `Library` class. The library class _knows_ about paths, and checks that they exist. Currently has ability to load `GLVideo` library, that will eventually become the new video libary (supports gstreamer-1.0 instead of gstreamer-0.1.0 that has already been dropped by some linux distros).
|
30
32
|
|
31
33
|
**v2.5.5** Intermediate `refactored_library` loader, can be release if required but still not there as regards refactor goals.
|
32
34
|
|
@@ -64,13 +66,13 @@
|
|
64
66
|
|
65
67
|
**v2.0.0** Refactored to work with processing-3.0, `--install samples` and/or vanilla processing `sound` and `video` libraries
|
66
68
|
|
67
|
-
**v0.9.0** Implements `data_path` in ruby, you should use this method to return the absolute path to the `data` folder (read and write).
|
69
|
+
**v0.9.0** Implements `data_path` in ruby, you should use this method to return the absolute path to the `data` folder (read and write). Prefer JRubyArt methods, in the main.
|
68
70
|
|
69
71
|
**v0.8.0** Complete samples refactored to `data_path` folder, no longer require jruby-complete to run because we provide an absolute path to `data` folder, but it still probably requires that you run the sketch from the directory. Future direction might be to create a `~/.propane` folder, which would support additionalvanilla processing libraries, also integration with `atom` editor.
|
70
72
|
|
71
73
|
**v0.7.0** Update to JRuby-Complete-9.1.2.0.
|
72
74
|
|
73
|
-
**v0.6.0** Includes a sketch creator utility 3D still only for linux64 and macosx, any Windows developers are welcome to extend to windows (should be easy), includes slider in sketch library, change to requiring jdk8
|
75
|
+
**v0.6.0** Includes a sketch creator utility 3D still only for linux64 and macosx, any Windows developers are welcome to extend to windows (should be easy), includes slider in sketch library, change to requiring jdk8\. Update to JRuby-Complete-9.1.0.0, request updated arcball (to run samples).
|
74
76
|
|
75
77
|
**v0.5.0** Includes a sketch creator utility 3D still only for linux64 and macosx, any Windows developers are welcome to extend to windows (should be easy).
|
76
78
|
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Propane
|
1
|
+
# Propane ![Travis CI](https://travis-ci.org/ruby-processing/propane.svg)
|
2
2
|
|
3
3
|
This version is intended to work with openjdk11+, @sampottinger is currently working on [vanilla processing][vanilla] which will enable JRubyArt to catch up. Unfortunately there is a cockup in debian distributions, and it is currently safer to use the Oracle version on debian (Archlinux openjdk version is fine).
|
4
4
|
|
data/Rakefile
CHANGED
@@ -1,26 +1,13 @@
|
|
1
1
|
# frozen_string_literal: false
|
2
2
|
require_relative 'lib/propane/version'
|
3
|
-
require 'erb'
|
4
|
-
|
5
|
-
desc 'Create jar Manifest'
|
6
|
-
task :create_manifest do
|
7
|
-
manifest = ERB.new <<~MANIFEST
|
8
|
-
Implementation-Title: rpextras (java extension for propane)
|
9
|
-
Implementation-Version: <%= Propane::VERSION %>
|
10
|
-
Class-Path: gluegen-rt.jar jog-all.jar
|
11
|
-
MANIFEST
|
12
|
-
File.open('MANIFEST.MF', 'w') do |f|
|
13
|
-
f.puts(manifest.result(binding))
|
14
|
-
end
|
15
|
-
end
|
16
3
|
|
17
4
|
task default: [:init, :compile, :install, :test, :gem]
|
18
5
|
|
19
6
|
# depends on installed processing, with processing on path
|
20
|
-
desc '
|
21
|
-
task init
|
22
|
-
processing_root = File.dirname(`readlink -f $(which processing)`) # for Archlinux etc
|
23
|
-
|
7
|
+
desc 'Copy Jars'
|
8
|
+
task :init do
|
9
|
+
# processing_root = File.dirname(`readlink -f $(which processing)`) # for Archlinux etc
|
10
|
+
processing_root = File.join(ENV['HOME'], 'processing-3.5.3') # alternative for debian linux etc
|
24
11
|
jar_dir = File.join(processing_root, 'core', 'library')
|
25
12
|
opengl = Dir.entries(jar_dir).grep(/amd64|macosx-universal/)
|
26
13
|
opengl.concat %w[jogl-all.jar gluegen-rt.jar]
|
@@ -58,10 +45,10 @@ desc 'Test'
|
|
58
45
|
task :test do
|
59
46
|
sh 'jruby test/helper_methods_test.rb'
|
60
47
|
# sh 'jruby test/respond_to_test.rb' Skip test on Travis to avoid Headless fail
|
61
|
-
sh 'jruby test/create_test.rb'
|
62
|
-
sh 'jruby test/math_tool_test.rb'
|
63
|
-
sh 'jruby test/deglut_spec_test.rb'
|
64
|
-
sh 'jruby test/vecmath_spec_test.rb'
|
48
|
+
sh 'jruby --dev test/create_test.rb'
|
49
|
+
sh 'jruby --dev test/math_tool_test.rb'
|
50
|
+
sh 'jruby --dev test/deglut_spec_test.rb'
|
51
|
+
sh 'jruby --dev test/vecmath_spec_test.rb'
|
65
52
|
end
|
66
53
|
|
67
54
|
desc 'clean'
|
@@ -6,14 +6,14 @@ class NativeFolder
|
|
6
6
|
|
7
7
|
WIN_FORMAT = 'windows%d'.freeze
|
8
8
|
LINUX_FORMAT = 'linux%d'.freeze
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
9
|
+
WIN_PATTERNS = [
|
10
|
+
/bccwin/i,
|
11
|
+
/cygwin/i,
|
12
|
+
/djgpp/i,
|
13
|
+
/ming/i,
|
14
|
+
/mswin/i,
|
15
|
+
/wince/i
|
16
|
+
].freeze
|
17
17
|
|
18
18
|
def initialize
|
19
19
|
@os = RbConfig::CONFIG['host_os'].downcase
|
@@ -21,13 +21,18 @@ class NativeFolder
|
|
21
21
|
end
|
22
22
|
|
23
23
|
def name
|
24
|
-
return 'macosx' if
|
25
|
-
# return format(WIN_FORMAT, bit) if WIN_PATTERNS.include? os
|
24
|
+
return 'macosx' if /darwin|mac/.match?(os)
|
26
25
|
return format(LINUX_FORMAT, bit) if os =~ /linux/
|
26
|
+
if WIN_PATTERNS.any? { |pat| pat =~ os }
|
27
|
+
return format(WINDOWS_FORMAT, '64') if /64/.match?(bit)
|
28
|
+
return format(WINDOWS_FORMAT, '32') if /32/.match?(bit)
|
29
|
+
end
|
30
|
+
raise 'Unsupported Architecture'
|
27
31
|
end
|
28
32
|
|
29
33
|
def extension
|
30
|
-
return '*.so' if
|
34
|
+
return '*.so' if /linux/.match?(os)
|
35
|
+
return '*.dll' if WIN_PATTERNS.any? { |pat| pat =~ os }
|
31
36
|
'*.dylib' # MacOS
|
32
37
|
end
|
33
38
|
end
|
data/lib/propane/version.rb
CHANGED
data/mvnw
CHANGED
@@ -54,38 +54,16 @@ case "`uname`" in
|
|
54
54
|
CYGWIN*) cygwin=true ;;
|
55
55
|
MINGW*) mingw=true;;
|
56
56
|
Darwin*) darwin=true
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
if [ -z "$JAVA_HOME" ] && [ -L /System/Library/Java/JavaVirtualMachines/CurrentJDK ] ; then
|
69
|
-
#
|
70
|
-
# Apple JDKs
|
71
|
-
#
|
72
|
-
export JAVA_HOME=/System/Library/Java/JavaVirtualMachines/CurrentJDK/Contents/Home
|
73
|
-
fi
|
74
|
-
|
75
|
-
if [ -z "$JAVA_HOME" ] && [ -L "/Library/Java/JavaVirtualMachines/CurrentJDK" ] ; then
|
76
|
-
#
|
77
|
-
# Oracle JDKs
|
78
|
-
#
|
79
|
-
export JAVA_HOME=/Library/Java/JavaVirtualMachines/CurrentJDK/Contents/Home
|
80
|
-
fi
|
81
|
-
|
82
|
-
if [ -z "$JAVA_HOME" ] && [ -x "/usr/libexec/java_home" ]; then
|
83
|
-
#
|
84
|
-
# Apple JDKs
|
85
|
-
#
|
86
|
-
export JAVA_HOME=`/usr/libexec/java_home`
|
87
|
-
fi
|
88
|
-
;;
|
57
|
+
# Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
|
58
|
+
# See https://developer.apple.com/library/mac/qa/qa1170/_index.html
|
59
|
+
if [ -z "$JAVA_HOME" ]; then
|
60
|
+
if [ -x "/usr/libexec/java_home" ]; then
|
61
|
+
export JAVA_HOME="`/usr/libexec/java_home`"
|
62
|
+
else
|
63
|
+
export JAVA_HOME="/Library/Java/Home"
|
64
|
+
fi
|
65
|
+
fi
|
66
|
+
;;
|
89
67
|
esac
|
90
68
|
|
91
69
|
if [ -z "$JAVA_HOME" ] ; then
|
@@ -130,13 +108,12 @@ if $cygwin ; then
|
|
130
108
|
CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
|
131
109
|
fi
|
132
110
|
|
133
|
-
# For
|
111
|
+
# For Mingw, ensure paths are in UNIX format before anything is touched
|
134
112
|
if $mingw ; then
|
135
113
|
[ -n "$M2_HOME" ] &&
|
136
114
|
M2_HOME="`(cd "$M2_HOME"; pwd)`"
|
137
115
|
[ -n "$JAVA_HOME" ] &&
|
138
116
|
JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
|
139
|
-
# TODO classpath?
|
140
117
|
fi
|
141
118
|
|
142
119
|
if [ -z "$JAVA_HOME" ]; then
|
@@ -184,27 +161,28 @@ fi
|
|
184
161
|
|
185
162
|
CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
|
186
163
|
|
187
|
-
# For Cygwin, switch paths to Windows format before running java
|
188
|
-
if $cygwin; then
|
189
|
-
[ -n "$M2_HOME" ] &&
|
190
|
-
M2_HOME=`cygpath --path --windows "$M2_HOME"`
|
191
|
-
[ -n "$JAVA_HOME" ] &&
|
192
|
-
JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
|
193
|
-
[ -n "$CLASSPATH" ] &&
|
194
|
-
CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
|
195
|
-
fi
|
196
|
-
|
197
164
|
# traverses directory structure from process work directory to filesystem root
|
198
165
|
# first directory with .mvn subdirectory is considered project base directory
|
199
166
|
find_maven_basedir() {
|
200
|
-
|
201
|
-
|
167
|
+
|
168
|
+
if [ -z "$1" ]
|
169
|
+
then
|
170
|
+
echo "Path not specified to find_maven_basedir"
|
171
|
+
return 1
|
172
|
+
fi
|
173
|
+
|
174
|
+
basedir="$1"
|
175
|
+
wdir="$1"
|
202
176
|
while [ "$wdir" != '/' ] ; do
|
203
177
|
if [ -d "$wdir"/.mvn ] ; then
|
204
178
|
basedir=$wdir
|
205
179
|
break
|
206
180
|
fi
|
207
|
-
|
181
|
+
# workaround for JBEAP-8937 (on Solaris 10/Sparc)
|
182
|
+
if [ -d "${wdir}" ]; then
|
183
|
+
wdir=`cd "$wdir/.."; pwd`
|
184
|
+
fi
|
185
|
+
# end of workaround
|
208
186
|
done
|
209
187
|
echo "${basedir}"
|
210
188
|
}
|
@@ -216,10 +194,109 @@ concat_lines() {
|
|
216
194
|
fi
|
217
195
|
}
|
218
196
|
|
219
|
-
|
197
|
+
BASE_DIR=`find_maven_basedir "$(pwd)"`
|
198
|
+
if [ -z "$BASE_DIR" ]; then
|
199
|
+
exit 1;
|
200
|
+
fi
|
201
|
+
|
202
|
+
##########################################################################################
|
203
|
+
# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
|
204
|
+
# This allows using the maven wrapper in projects that prohibit checking in binary data.
|
205
|
+
##########################################################################################
|
206
|
+
if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
|
207
|
+
if [ "$MVNW_VERBOSE" = true ]; then
|
208
|
+
echo "Found .mvn/wrapper/maven-wrapper.jar"
|
209
|
+
fi
|
210
|
+
else
|
211
|
+
if [ "$MVNW_VERBOSE" = true ]; then
|
212
|
+
echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
|
213
|
+
fi
|
214
|
+
if [ -n "$MVNW_REPOURL" ]; then
|
215
|
+
jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.5/maven-wrapper-0.5.5.jar"
|
216
|
+
else
|
217
|
+
jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.5/maven-wrapper-0.5.5.jar"
|
218
|
+
fi
|
219
|
+
while IFS="=" read key value; do
|
220
|
+
case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
|
221
|
+
esac
|
222
|
+
done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
|
223
|
+
if [ "$MVNW_VERBOSE" = true ]; then
|
224
|
+
echo "Downloading from: $jarUrl"
|
225
|
+
fi
|
226
|
+
wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
|
227
|
+
if $cygwin; then
|
228
|
+
wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
|
229
|
+
fi
|
230
|
+
|
231
|
+
if command -v wget > /dev/null; then
|
232
|
+
if [ "$MVNW_VERBOSE" = true ]; then
|
233
|
+
echo "Found wget ... using wget"
|
234
|
+
fi
|
235
|
+
if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
|
236
|
+
wget "$jarUrl" -O "$wrapperJarPath"
|
237
|
+
else
|
238
|
+
wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
|
239
|
+
fi
|
240
|
+
elif command -v curl > /dev/null; then
|
241
|
+
if [ "$MVNW_VERBOSE" = true ]; then
|
242
|
+
echo "Found curl ... using curl"
|
243
|
+
fi
|
244
|
+
if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
|
245
|
+
curl -o "$wrapperJarPath" "$jarUrl" -f
|
246
|
+
else
|
247
|
+
curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
|
248
|
+
fi
|
249
|
+
|
250
|
+
else
|
251
|
+
if [ "$MVNW_VERBOSE" = true ]; then
|
252
|
+
echo "Falling back to using Java to download"
|
253
|
+
fi
|
254
|
+
javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
|
255
|
+
# For Cygwin, switch paths to Windows format before running javac
|
256
|
+
if $cygwin; then
|
257
|
+
javaClass=`cygpath --path --windows "$javaClass"`
|
258
|
+
fi
|
259
|
+
if [ -e "$javaClass" ]; then
|
260
|
+
if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
|
261
|
+
if [ "$MVNW_VERBOSE" = true ]; then
|
262
|
+
echo " - Compiling MavenWrapperDownloader.java ..."
|
263
|
+
fi
|
264
|
+
# Compiling the Java class
|
265
|
+
("$JAVA_HOME/bin/javac" "$javaClass")
|
266
|
+
fi
|
267
|
+
if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
|
268
|
+
# Running the downloader
|
269
|
+
if [ "$MVNW_VERBOSE" = true ]; then
|
270
|
+
echo " - Running MavenWrapperDownloader.java ..."
|
271
|
+
fi
|
272
|
+
("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
|
273
|
+
fi
|
274
|
+
fi
|
275
|
+
fi
|
276
|
+
fi
|
277
|
+
##########################################################################################
|
278
|
+
# End of extension
|
279
|
+
##########################################################################################
|
280
|
+
|
281
|
+
export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
|
282
|
+
if [ "$MVNW_VERBOSE" = true ]; then
|
283
|
+
echo $MAVEN_PROJECTBASEDIR
|
284
|
+
fi
|
220
285
|
MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
|
221
286
|
|
222
|
-
#
|
287
|
+
# For Cygwin, switch paths to Windows format before running java
|
288
|
+
if $cygwin; then
|
289
|
+
[ -n "$M2_HOME" ] &&
|
290
|
+
M2_HOME=`cygpath --path --windows "$M2_HOME"`
|
291
|
+
[ -n "$JAVA_HOME" ] &&
|
292
|
+
JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
|
293
|
+
[ -n "$CLASSPATH" ] &&
|
294
|
+
CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
|
295
|
+
[ -n "$MAVEN_PROJECTBASEDIR" ] &&
|
296
|
+
MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
|
297
|
+
fi
|
298
|
+
|
299
|
+
# Provide a "standardized" way to retrieve the CLI args that will
|
223
300
|
# work with both Windows and non-Windows executions.
|
224
301
|
MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
|
225
302
|
export MAVEN_CMD_LINE_ARGS
|
@@ -230,5 +307,4 @@ exec "$JAVACMD" \
|
|
230
307
|
$MAVEN_OPTS \
|
231
308
|
-classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
|
232
309
|
"-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
|
233
|
-
${WRAPPER_LAUNCHER} $
|
234
|
-
|
310
|
+
${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
|