Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commita79bed9

Browse files
authored
iluwatar#1655: added maven wrapper (iluwatar#1656)
Addresses Point 1 and 2
1 parent7c01bc7 commita79bed9

File tree

6 files changed

+613
-2
lines changed

6 files changed

+613
-2
lines changed

‎.github/workflows/maven-ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ jobs:
7373
# SonarQube scan does not work for forked repositories try changing it to xvfb-run mvn clean verify
7474
# See https://jira.sonarsource.com/browse/MMF-1371
7575
-name:Build with Maven and run SonarQube analysis
76-
run:xvfb-runmvn clean verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar
76+
run:xvfb-run./mvnw clean verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar
7777
env:
7878
# These two env variables are needed for sonar analysis
7979
GITHUB_TOKEN:${{ secrets.GITHUB_TOKEN }}

‎.github/workflows/maven-pr-builder.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,4 +61,4 @@ jobs:
6161
# SonarQube scan does not work for forked repositories.
6262
# See https://jira.sonarsource.com/browse/MMF-1371
6363
-name:Build with Maven
64-
run:xvfb-runmvn clean verify
64+
run:xvfb-run./mvnw clean verify
Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -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+
importjava.net.*;
17+
importjava.io.*;
18+
importjava.nio.channels.*;
19+
importjava.util.Properties;
20+
21+
publicclassMavenWrapperDownloader {
22+
23+
privatestaticfinalStringWRAPPER_VERSION ="0.5.6";
24+
/**
25+
* Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
26+
*/
27+
privatestaticfinalStringDEFAULT_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+
privatestaticfinalStringMAVEN_WRAPPER_PROPERTIES_PATH =
35+
".mvn/wrapper/maven-wrapper.properties";
36+
37+
/**
38+
* Path where the maven-wrapper.jar will be saved to.
39+
*/
40+
privatestaticfinalStringMAVEN_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+
privatestaticfinalStringPROPERTY_NAME_WRAPPER_URL ="wrapperUrl";
47+
48+
publicstaticvoidmain(Stringargs[]) {
49+
System.out.println("- Downloader started");
50+
FilebaseDirectory =newFile(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+
FilemavenWrapperPropertyFile =newFile(baseDirectory,MAVEN_WRAPPER_PROPERTIES_PATH);
56+
Stringurl =DEFAULT_DOWNLOAD_URL;
57+
if(mavenWrapperPropertyFile.exists()) {
58+
FileInputStreammavenWrapperPropertyFileInputStream =null;
59+
try {
60+
mavenWrapperPropertyFileInputStream =newFileInputStream(mavenWrapperPropertyFile);
61+
PropertiesmavenWrapperProperties =newProperties();
62+
mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
63+
url =mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL,url);
64+
}catch (IOExceptione) {
65+
System.out.println("- ERROR loading '" +MAVEN_WRAPPER_PROPERTIES_PATH +"'");
66+
}finally {
67+
try {
68+
if(mavenWrapperPropertyFileInputStream !=null) {
69+
mavenWrapperPropertyFileInputStream.close();
70+
}
71+
}catch (IOExceptione) {
72+
// Ignore ...
73+
}
74+
}
75+
}
76+
System.out.println("- Downloading from: " +url);
77+
78+
FileoutputFile =newFile(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 (Throwablee) {
91+
System.out.println("- Error downloading");
92+
e.printStackTrace();
93+
System.exit(1);
94+
}
95+
}
96+
97+
privatestaticvoiddownloadFileFromURL(StringurlString,Filedestination)throwsException {
98+
if (System.getenv("MVNW_USERNAME") !=null &&System.getenv("MVNW_PASSWORD") !=null) {
99+
Stringusername =System.getenv("MVNW_USERNAME");
100+
char[]password =System.getenv("MVNW_PASSWORD").toCharArray();
101+
Authenticator.setDefault(newAuthenticator() {
102+
@Override
103+
protectedPasswordAuthenticationgetPasswordAuthentication() {
104+
returnnewPasswordAuthentication(username,password);
105+
}
106+
});
107+
}
108+
URLwebsite =newURL(urlString);
109+
ReadableByteChannelrbc;
110+
rbc =Channels.newChannel(website.openStream());
111+
FileOutputStreamfos =newFileOutputStream(destination);
112+
fos.getChannel().transferFrom(rbc,0,Long.MAX_VALUE);
113+
fos.close();
114+
rbc.close();
115+
}
116+
117+
}

‎.mvn/wrapper/maven-wrapper.properties

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.3/apache-maven-3.6.3-bin.zip
2+
wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp