/*
* 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();
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
环境: win11 工具: idea 2017 jdk: 1.8 maven : 3.2.1 项目:maven 配合此篇文章 springboot 的配置文件加载顺序 第一个配置文件位于 SRC平级目录:如下图所示 port: 8083 监听端口 第二个配置文件位于config 目录下 监听端口为:8084 运行 此项目。 如果编译有错,刷新maven 文件。 所下图绿框所示。 我们在调试SB项目时就可以知道了配置文件的顺序
资源推荐
资源详情
资源评论
收起资源包目录
unit2-1.rar (87个子文件)
unit2-1
mvnw.cmd 7KB
unit2-2.iml 8KB
pom.xml 2KB
unit21.iml 8KB
src
test
java
cn
js
ccit
Unit21ApplicationTests.java 224B
main
resources
application.yaml 234B
config
application.yaml 91B
java
cn
js
ccit
Unit21Application.java 328B
controller
HelloController.java 333B
.mvn
wrapper
maven-wrapper.properties 220B
MavenWrapperDownloader.java 5KB
.idea
.name 6B
libraries
Maven__org_hamcrest_hamcrest_2_2.xml 482B
Maven__org_springframework_boot_spring_boot_starter_tomcat_2_4_5.xml 670B
Maven__net_minidev_accessors_smart_1_2.xml 527B
Maven__org_junit_jupiter_junit_jupiter_api_5_7_1.xml 579B
Maven__org_junit_jupiter_junit_jupiter_engine_5_7_1.xml 600B
Maven__org_springframework_boot_spring_boot_starter_json_2_4_5.xml 656B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_11_4.xml 666B
Maven__org_junit_platform_junit_platform_commons_1_7_1.xml 618B
Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_3.xml 596B
Maven__org_springframework_boot_spring_boot_starter_2_4_5.xml 621B
Maven__org_yaml_snakeyaml_1_27.xml 480B
Maven__org_springframework_boot_spring_boot_test_2_4_5.xml 600B
Maven__org_mockito_mockito_junit_jupiter_3_6_28.xml 590B
Maven__org_springframework_spring_expression_5_3_6.xml 587B
Maven__org_springframework_spring_aop_5_3_6.xml 538B
Maven__org_assertj_assertj_core_3_18_1.xml 527B
Maven__org_junit_jupiter_junit_jupiter_5_7_1.xml 551B
Maven__org_springframework_spring_test_5_3_6.xml 545B
Maven__ch_qos_logback_logback_core_1_2_3.xml 532B
Maven__net_bytebuddy_byte_buddy_agent_1_10_22.xml 570B
Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_11_4.xml 721B
Maven__org_springframework_spring_jcl_5_3_6.xml 538B
Maven__org_skyscreamer_jsonassert_1_5_0.xml 522B
Maven__org_apiguardian_apiguardian_api_1_1_0.xml 557B
Maven__org_springframework_boot_spring_boot_starter_web_2_4_5.xml 649B
Maven__org_slf4j_jul_to_slf4j_1_7_30.xml 519B
Maven__org_xmlunit_xmlunit_core_2_7_0.xml 520B
Maven__org_apache_logging_log4j_log4j_api_2_13_3.xml 558B
Maven__org_springframework_spring_context_5_3_6.xml 566B
Maven__org_slf4j_slf4j_api_1_7_30.xml 498B
Maven__com_fasterxml_jackson_core_jackson_annotations_2_11_4.xml 636B
Maven__org_mockito_mockito_core_3_6_28.xml 527B
Maven__jakarta_activation_jakarta_activation_api_1_2_2.xml 618B
Maven__org_springframework_boot_spring_boot_autoconfigure_2_4_5.xml 663B
Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml 685B
Maven__org_springframework_boot_spring_boot_test_autoconfigure_2_4_5.xml 698B
Maven__org_ow2_asm_asm_5_0_4.xml 457B
Maven__org_opentest4j_opentest4j_1_2_0.xml 518B
Maven__ch_qos_logback_logback_classic_1_2_3.xml 553B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_11_4.xml 680B
Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml 618B
Maven__org_springframework_boot_spring_boot_configuration_processor_2_4_5.xml 733B
Maven__org_springframework_boot_spring_boot_starter_test_2_4_5.xml 656B
Maven__net_bytebuddy_byte_buddy_1_10_22.xml 528B
Maven__net_minidev_json_smart_2_3.xml 492B
Maven__org_springframework_spring_web_5_3_6.xml 538B
Maven__org_springframework_spring_beans_5_3_6.xml 552B
Maven__org_glassfish_jakarta_el_3_0_3.xml 514B
Maven__com_fasterxml_jackson_core_jackson_databind_2_11_4.xml 615B
Maven__org_objenesis_objenesis_3_1.xml 493B
Maven__org_junit_platform_junit_platform_engine_1_7_1.xml 611B
Maven__com_jayway_jsonpath_json_path_2_4_0.xml 531B
Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_45.xml 645B
Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_45.xml 610B
Maven__org_junit_jupiter_junit_jupiter_params_5_7_1.xml 600B
Maven__com_fasterxml_jackson_core_jackson_core_2_11_4.xml 587B
Maven__org_springframework_boot_spring_boot_2_4_5.xml 565B
Maven__org_apache_logging_log4j_log4j_to_slf4j_2_13_3.xml 593B
Maven__org_springframework_spring_core_5_3_6.xml 545B
Maven__org_springframework_boot_spring_boot_starter_logging_2_4_5.xml 677B
Maven__org_springframework_spring_webmvc_5_3_6.xml 559B
workspace.xml 43KB
misc.xml 861B
compiler.xml 624B
modules.xml 252B
encodings.xml 172B
kotlinc.xml 232B
target
classes
cn
js
ccit
controller
HelloController.class 639B
Unit21Application.class 697B
application.yaml 234B
config
application.yaml 91B
test-classes
cn
js
ccit
Unit21ApplicationTests.class 525B
generated-test-sources
test-annotations
generated-sources
annotations
mvnw 10KB
application.yaml 79B
config
application.yaml 86B
共 87 条
- 1
资源评论
项目花园范德彪
- 粉丝: 5398
- 资源: 219
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功