/*
* Copyright 2007-present the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import java.net.*;
import java.io.*;
import java.nio.channels.*;
import java.util.Properties;
public class MavenWrapperDownloader {
private static final String WRAPPER_VERSION = "0.5.6";
/**
* Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
*/
private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
+ WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
/**
* Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
* use instead of the default one.
*/
private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
".mvn/wrapper/maven-wrapper.properties";
/**
* Path where the maven-wrapper.jar will be saved to.
*/
private static final String MAVEN_WRAPPER_JAR_PATH =
".mvn/wrapper/maven-wrapper.jar";
/**
* Name of the property which should be used to override the default download url for the wrapper.
*/
private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
public static void main(String args[]) {
System.out.println("- Downloader started");
File baseDirectory = new File(args[0]);
System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
// If the maven-wrapper.properties exists, read it and check if it contains a custom
// wrapperUrl parameter.
File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
String url = DEFAULT_DOWNLOAD_URL;
if (mavenWrapperPropertyFile.exists()) {
FileInputStream mavenWrapperPropertyFileInputStream = null;
try {
mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
Properties mavenWrapperProperties = new Properties();
mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
} catch (IOException e) {
System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
} finally {
try {
if (mavenWrapperPropertyFileInputStream != null) {
mavenWrapperPropertyFileInputStream.close();
}
} catch (IOException e) {
// Ignore ...
}
}
}
System.out.println("- Downloading from: " + url);
File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
if (!outputFile.getParentFile().exists()) {
if (!outputFile.getParentFile().mkdirs()) {
System.out.println(
"- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
}
}
System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
try {
downloadFileFromURL(url, outputFile);
System.out.println("Done");
System.exit(0);
} catch (Throwable e) {
System.out.println("- Error downloading");
e.printStackTrace();
System.exit(1);
}
}
private static void downloadFileFromURL(String urlString, File destination) throws Exception {
if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
String username = System.getenv("MVNW_USERNAME");
char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
Authenticator.setDefault(new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
}
URL website = new URL(urlString);
ReadableByteChannel rbc;
rbc = Channels.newChannel(website.openStream());
FileOutputStream fos = new FileOutputStream(destination);
fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
fos.close();
rbc.close();
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
天津理工大学J2EE实验 (404个子文件)
图.bmp 1.16MB
User.class 3KB
TempNow.class 3KB
TempNowServiceImpl.class 3KB
UserServiceImpl.class 2KB
UserController.class 1KB
TempNowController.class 1KB
J2Ee1Application.class 738B
J2Ee2Application.class 738B
DashboardController.class 725B
HistogramController.class 725B
LineChartController.class 725B
UserMapper.class 656B
TempNowMapper.class 623B
J2Ee1ApplicationTests.class 536B
J2Ee2ApplicationTests.class 536B
UserService.class 384B
TempNowService.class 307B
mvnw.cmd 6KB
mvnw.cmd 6KB
bootstrap.css 143KB
bootstrap.min.css 119KB
bootstrap-theme.css 25KB
bootstrap-theme.min.css 23KB
index.css 2KB
.DS_Store 10KB
.DS_Store 8KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
glyphicons-halflings-regular.eot 20KB
底2.gif 10KB
底2.gif 10KB
新品推介4.gif 7KB
新品推介4.gif 7KB
新品推介5.gif 7KB
新品推介5.gif 7KB
新品推介6.gif 7KB
新品推介6.gif 7KB
新品推荐2.gif 7KB
新品推荐2.gif 7KB
新品推介1.gif 7KB
新品推介1.gif 7KB
新品推荐8.gif 7KB
新品推荐8.gif 7KB
新品推荐3.gif 6KB
新品推荐3.gif 6KB
新品推荐9.gif 6KB
新品推荐9.gif 6KB
新品推荐7.gif 6KB
新品推荐7.gif 6KB
底1.gif 6KB
底1.gif 6KB
顶2.gif 4KB
顶2.gif 4KB
顶3.gif 4KB
顶3.gif 4KB
顶1.gif 3KB
顶1.gif 3KB
业务.gif 2KB
业务.gif 2KB
6.gif 2KB
6.gif 2KB
1.gif 2KB
1.gif 2KB
7.gif 2KB
7.gif 2KB
4.gif 2KB
4.gif 2KB
5.gif 2KB
5.gif 2KB
2.gif 2KB
2.gif 2KB
8.gif 1KB
8.gif 1KB
news.gif 808B
news.gif 808B
底色.gif 254B
底色.gif 254B
灰2.gif 183B
灰2.gif 183B
灰3.gif 142B
灰3.gif 142B
灰1.gif 132B
灰1.gif 132B
五线谱.gif 50B
五线谱.gif 50B
竖线.gif 49B
竖线.gif 49B
点.gif 47B
点.gif 47B
.gitignore 395B
.gitignore 395B
.gitignore 176B
.gitignore 176B
共 404 条
- 1
- 2
- 3
- 4
- 5
Jason20
- 粉丝: 421
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页