/*
* 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();
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
WebRTC+java实现多人视频通讯
共162个文件
xml:81个
jar:37个
class:13个
1星 需积分: 48 70 下载量 48 浏览量
2021-04-24
21:13:49
上传
评论 9
收藏 12.85MB 7Z 举报
温馨提示
通过WebRTC实时通讯技术,配合后端java websocket实现多人视频。局域网内视频没问题,公网需要自行穿透NAT,项目整体为SpringBoot 外置Tomcat 启动
资源详情
资源评论
资源推荐
收起资源包目录
WebRTC+java实现多人视频通讯 (162个子文件)
SocketServer.class 5KB
SocketServer.class 5KB
WebrtcApplication.class 2KB
WebrtcApplication.class 2KB
User.class 2KB
User.class 2KB
LoginController.class 2KB
LoginController.class 2KB
WebMvcConfig.class 1KB
WebMvcConfig.class 1KB
ServletInitializer.class 923B
ServletInitializer.class 923B
WebrtcApplicationTests.class 541B
mvnw.cmd 6KB
.gitignore 395B
.gitignore 251B
index.html 916B
index.html 916B
index.html 916B
404.html 204B
404.html 204B
404.html 204B
webrtc.iml 1KB
spring-web-5.3.6.jar 1.52MB
spring-boot-autoconfigure-2.4.5.jar 1.47MB
spring-core-5.3.6.jar 1.39MB
jackson-databind-2.11.4.jar 1.36MB
spring-boot-2.4.5.jar 1.26MB
spring-context-5.3.6.jar 1.19MB
spring-webmvc-5.3.6.jar 980KB
thymeleaf-3.0.12.RELEASE.jar 845KB
spring-beans-5.3.6.jar 680KB
fastjson-1.2.66.jar 647KB
logback-core-1.2.3.jar 461KB
spring-aop-5.3.6.jar 366KB
jackson-core-2.11.4.jar 343KB
snakeyaml-1.27.jar 303KB
log4j-api-2.13.3.jar 285KB
logback-classic-1.2.3.jar 284KB
spring-expression-5.3.6.jar 276KB
attoparser-2.0.5.RELEASE.jar 239KB
thymeleaf-spring5-3.0.12.RELEASE.jar 174KB
unbescape-1.1.6.RELEASE.jar 170KB
jackson-datatype-jsr310-2.11.4.jar 108KB
spring-session-core-2.4.3.jar 88KB
jackson-annotations-2.11.4.jar 70KB
maven-wrapper.jar 50KB
slf4j-api-1.7.30.jar 41KB
thymeleaf-extras-java8time-3.0.4.RELEASE.jar 39KB
jackson-datatype-jdk8-2.11.4.jar 34KB
jakarta.annotation-api-1.3.5.jar 24KB
spring-jcl-5.3.6.jar 23KB
log4j-to-slf4j-2.13.3.jar 17KB
jackson-module-parameter-names-2.11.4.jar 9KB
spring-boot-starter-web-2.4.5.jar 5KB
spring-boot-starter-2.4.5.jar 5KB
spring-boot-starter-thymeleaf-2.4.5.jar 5KB
spring-boot-starter-logging-2.4.5.jar 5KB
spring-boot-starter-json-2.4.5.jar 5KB
jul-to-slf4j-1.7.30.jar 4KB
MavenWrapperDownloader.java 5KB
SocketServer.java 4KB
WebrtcApplication.java 1KB
LoginController.java 1KB
WebMvcConfig.java 674B
ServletInitializer.java 408B
User.java 250B
WebrtcApplicationTests.java 210B
jquery-2.1.4.min.js 82KB
jquery-2.1.4.min.js 82KB
jquery-2.1.4.min.js 82KB
video.js 7KB
video.js 7KB
video.js 7KB
HELP.md 720B
MANIFEST.MF 228B
mvnw 10KB
maven-wrapper.properties 218B
workspace.xml 14KB
uiDesigner.xml 9KB
webrtc_war_exploded.xml 5KB
pom.xml 2KB
Project_Default.xml 1KB
compiler.xml 873B
jarRepositories.xml 864B
Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_11_4.xml 736B
Maven__org_thymeleaf_extras_thymeleaf_extras_java8time_3_0_4_RELEASE.xml 725B
Maven__org_springframework_boot_spring_boot_test_autoconfigure_2_4_5.xml 713B
Maven__org_springframework_boot_spring_boot_starter_thymeleaf_2_4_5.xml 706B
Maven__org_springframework_boot_spring_boot_starter_thymeleaf_2_4_52.xml 706B
Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml 700B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_11_4.xml 695B
Maven__org_springframework_boot_spring_boot_starter_logging_2_4_5.xml 692B
Maven__org_springframework_boot_spring_boot_starter_tomcat_2_4_5.xml 685B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_11_4.xml 681B
Maven__org_springframework_boot_spring_boot_autoconfigure_2_4_5.xml 678B
Maven__org_springframework_boot_spring_boot_starter_json_2_4_5.xml 671B
Maven__org_springframework_boot_spring_boot_starter_test_2_4_5.xml 671B
Maven__org_springframework_boot_spring_boot_starter_web_2_4_5.xml 664B
Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_45.xml 660B
共 162 条
- 1
- 2
zxk318www
- 粉丝: 1
- 资源: 12
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论2