/*
* 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();
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
我的毕业设计,一个物业管理系统网站.zip (190个子文件)
mvnw.cmd 6KB
bootstrap.css 138KB
bootstrap.css 138KB
style.css 51KB
style.css 51KB
font-awesome.css 34KB
font-awesome.css 34KB
style1.css 5KB
style1.css 5KB
simplelightbox.min.css 2KB
simplelightbox.min.css 2KB
supersized.css 2KB
supersized.css 2KB
reset.css 1KB
reset.css 1KB
fontawesome-webfont.eot 75KB
fontawesome-webfont.eot 75KB
.gitignore 333B
index.html 15KB
list.html 4KB
add.html 4KB
password.html 4KB
commons.html 4KB
list.html 3KB
add.html 3KB
pay.html 3KB
pay.html 3KB
add.html 2KB
list.html 2KB
add.html 2KB
list.html 2KB
login.html 2KB
list.html 2KB
mylist.html 2KB
add.html 1KB
add.html 1KB
list.html 1KB
list.html 1KB
list.html 954B
add.html 894B
add.html 820B
manage.html 699B
electric.html 698B
water.html 695B
gas.html 693B
manage.html 674B
electric.html 674B
water.html 671B
gas.html 668B
index.html 515B
zh.html 18B
ch.html 18B
maven-wrapper.jar 50KB
MavenWrapperDownloader.java 5KB
CarRequestController.java 3KB
InfoController.java 3KB
PostController.java 3KB
WaterController.java 3KB
ElectricController.java 3KB
ManageController.java 3KB
GasController.java 3KB
AccountController.java 2KB
CarController.java 2KB
CarRequest.java 2KB
NoticeController.java 2KB
Post.java 2KB
LiuyanController.java 2KB
DruidConfig.java 2KB
LoginController.java 2KB
Car.java 2KB
Liuyan.java 2KB
Account.java 2KB
HomepageController.java 2KB
PayRecord.java 1KB
CommentController.java 1KB
Comment.java 1KB
PayController.java 1KB
AccountMapper.java 1KB
CarRequestMapper.java 1KB
Notice.java 1KB
Pay.java 1KB
PayServiceImpl.java 1KB
PostMapper.java 1KB
CarMapper.java 1KB
PayRecordController.java 1KB
LoginHandlerInterceptor.java 926B
AccountServiceImpl.java 918B
NoticeMapper.java 825B
PayRecordMapper.java 777B
LiuyanMapper.java 767B
Myconfig.java 746B
PayMapper.java 722B
MyBatisConfig.java 619B
TestController.java 585B
ManagementApplicationTests.java 580B
CommentMapper.java 472B
ManagementApplication.java 426B
AccountService.java 390B
PayService.java 282B
1.jpg 377KB
共 190 条
- 1
- 2
资源评论
马coder
- 粉丝: 1206
- 资源: 6602
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功