/*
* 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
*
* http://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.5";
/**
* 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 (338个子文件)
DaoSupportImpl.class 5KB
AccessController.class 5KB
CourseStudentService.class 4KB
WebMvcConfig.class 4KB
TeacherCourseService.class 4KB
StudentManageController.class 4KB
TeacherManageController.class 4KB
TeacherController.class 4KB
CourseManageController.class 4KB
Teacher.class 3KB
StudentService.class 3KB
CourseService.class 3KB
Student.class 3KB
DeptManageController.class 3KB
ClassManageController.class 3KB
Course.class 3KB
StudentController.class 3KB
AccessInterceptor.class 2KB
Auth.class 2KB
TeacherService.class 2KB
MainApplication.class 2KB
CourseStudent.class 2KB
Dept.class 2KB
Clazz.class 2KB
Token.class 2KB
DataSourceConfig.class 2KB
TeacherCommon.class 2KB
TeacherCourse.class 1KB
CrossDomainInterceptor.class 1KB
MD5Encoder.class 1KB
Message.class 1KB
CourseStudentPK.class 1KB
TeacherCoursePK.class 1KB
DaoSupport.class 692B
MainApplicationTests.class 616B
ClassService.class 492B
DeptService.class 488B
mvnw.cmd 7KB
vendor.css 163KB
vendor.css 163KB
bootstrap.css 150KB
bootstrap.css 150KB
sweetalert.css 24KB
sweetalert.css 24KB
font-awesome.min.css 21KB
font-awesome.min.css 21KB
animate.css 20KB
animate.css 20KB
dataTables.bootstrap.css 7KB
dataTables.bootstrap.css 7KB
main.css 569B
main.css 569B
bundle.css 418B
bundle.css 418B
fontawesome-webfont.eot 55KB
fontawesome-webfont.eot 55KB
.gitignore 301B
grade.html 6KB
grade.html 6KB
student.html 6KB
student.html 6KB
teacher.html 5KB
teacher.html 5KB
course.html 4KB
course.html 4KB
signin.html 3KB
signin.html 3KB
class.html 2KB
class.html 2KB
dept.html 2KB
dept.html 2KB
change-pwd.html 1KB
change-pwd.html 1KB
admin.html 1KB
admin.html 1KB
student.html 995B
student.html 995B
my-course.html 924B
my-course.html 924B
teacher.html 901B
teacher.html 901B
my-course.html 893B
my-course.html 893B
all-course.html 891B
all-course.html 891B
all-course.html 819B
all-course.html 819B
index.html 638B
index.html 638B
grade.html 538B
grade.html 538B
app.html 119B
app.html 119B
xk.iml 11KB
MavenWrapperDownloader.java 5KB
DaoSupportImpl.java 5KB
AccessController.java 5KB
Teacher.java 4KB
CourseStudentService.java 4KB
Student.java 3KB
共 338 条
- 1
- 2
- 3
- 4
资源评论
〆°ゞ
- 粉丝: 2
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功