Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >腾讯云Java SDK maven使用方式的详细介绍

腾讯云Java SDK maven使用方式的详细介绍

原创
作者头像
Windows技术交流
修改于 2023-07-25 10:43:45
修改于 2023-07-25 10:43:45
6.2K00
代码可运行
举报
文章被收录于专栏:Windows技术交流Windows技术交流
运行总次数:0
代码可运行

我的笔记步骤结束后有详细过程

笔记

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
0、搭建vs code java环境,调通mvn

1、命令行mvn创建test项目
mvn archetype:generate -DgroupId=com.testing -DartifactId=test -Dversion=1.0.0 -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeCatalog=internal

2、安装依赖到本地

cd test
添加依赖到pom.xml
    <dependency>
      <groupId>javax.xml.bind</groupId>
      <artifactId>jaxb-api</artifactId>
      <version>2.3.1</version>
    </dependency>

    <dependency>
      <groupId>com.squareup.okhttp3</groupId>
      <artifactId>okhttp</artifactId>
      <version>3.3.0</version>
    </dependency>

在命令行中,导航到项目目录,然后运行以下命令以下载并安装新添加的依赖项
mvn clean install


3、改文件名跟类名要匹配
C:\Users\Administrator\test\src\main\java\com\testing
比如文件名是Chaxunyure.java,那么public class APIv3要改成public class Chaxunyure
文件开头第一句加package com.testing;

4、编译
mvn compile

5、执行
mvn exec:java -Dexec.mainClass="com.testing.App"
mvn exec:java -Dexec.mainClass="com.testing.Chaxunyure"
mvn exec:java -Dexec.mainClass="com.testing.PreheatSnapshot"
mvn exec:java -Dexec.mainClass="com.testing.StopPreheatedSnapshots"
6、编译和执行可以2步连在一起搞
mvn compile exec:java -Dexec.mainClass="com.testing.App"
mvn compile exec:java -Dexec.mainClass="com.testing.Chaxunyure"
mvn compile exec:java -Dexec.mainClass="com.testing.PreheatSnapshot"
mvn compile exec:java -Dexec.mainClass="com.testing.StopPreheatedSnapshots"
7、不自动结束,2个办法
①带参数-Dexec.cleanupDaemonThreads=false
mvn compile exec:java -Dexec.mainClass="com.testing.App" -Dexec.cleanupDaemonThreads=false
mvn compile exec:java -Dexec.mainClass="com.testing.Chaxunyure" -Dexec.cleanupDaemonThreads=false
mvn compile exec:java -Dexec.mainClass="com.testing.PreheatSnapshot" -Dexec.cleanupDaemonThreads=false
mvn compile exec:java -Dexec.mainClass="com.testing.StopPreheatedSnapshots" -Dexec.cleanupDaemonThreads=false
②给main函数最后一句增加System.exit(0);

1、配置环境

①比较VS2019和VS Code,Visual Studio 2019支持C#/C++/Python/Node.js,安装VS2019,腾讯云好几种SDK都能使用了,真方便,但是不支持Java,而VS Code轻量支持Java,够用了

https://code.visualstudio.com/docs/java/java-faq#_will-this-be-available-for-visual-studio

这个链接介绍说Visual Studio不会支持Java,VS Code对Java是轻量级支持

Currently we don't plan to extend the Java support to Visual Studio. There's already great IDEs for Java and we're focusing on VS Code to provide a lightweight experience in a polyglot editor.

②安装VS Code和Java Extension Pack

如下图,Java Extension Pack是包含maven的,安装好Java Extension Pack和openJDK11后,

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
启动一个java空白项目,然后就会自动把maven装全
启动一个java空白项目,然后就会自动把maven装全
启动一个java空白项目,然后就会自动把maven装全

然后手动把mvn.cmd的目录加入环境变量,搜mvn.cmd找到路径如下(以你搜到的为准)

例如:C:\Users\Administrator\.m2\wrapper\dists\apache-maven-3.6.2-bin\795eh28tki48bv3l67maojf0ra\apache-maven-3.6.2\bin\

例如:C:\Users\HASEE\.m2\wrapper\dists\apache-maven-3.6.3-bin\1iopthnavndlasol9gbrbg6bf2\apache-maven-3.6.3\bin\

运行systempropertiesadvanced添加环境变量

Java Extension Pack的下载地址:https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-pack (这个地址实际是从搜索得来的,访问https://marketplace.visualstudio.com/ 搜vscjava.vscode-java-pack得到)

Java Extension Pack的介绍:Java Extension Pack is a collection of popular extensions that can help write, test and debug Java applications in Visual Studio Code. Check out Java in VS Code to get started.

这个链接很关键:https://code.visualstudio.com/docs/languages/java 打开直接下载Visual Studio Code Java Pack Installer进行安装会比较慢,建议先单独下载VS Code安装,然后再安装Java Extension Pack,最后再下载安装OpenJDK11

两种办法,一种直接访问上面的链接点install按钮会调用vs code打开后是下图这样,就行点install即可

另一种是打开vs code → welcome界面 → getting started → browse language extensions → 搜索 vscjava.vscode-java-pack

安装OpenJDK11参考Lightweight Mode, Maven Support, Java Package, and Dependency Management in Visual Studio Code

点下图中的Run a Command... 然后输入Java: Configure Java Runtime 点一下,在出来的结果里点一下蓝色的Java: Configure Java Runtime会出现openJDK配置的界面

2、命令行mvn创建test项目

mvn archetype:generate -DgroupId=com.testing -DartifactId=test -Dversion=1.0.0 -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeCatalog=internal

加粗标记的3个自己填,第1个就是域名机构在前,第2个很重要,是整个项目的目录

如果遇到Y::回车即可

最后一个-DarchetypeCatalog=internal非常重要,否则可能卡住不动

artifactId等于什么,一会儿就得进什么目录

3、项目配置调试排错

进到第一步创建的test项目(目录),里面有个pom.xml,编辑pom.xml,增加下面2段话

第一段话里,properties部分的maven.compiler.source和maven.compiler.target的11是我jdk的大版本号,你的是几就写几,我写成11确实不报错了

其实我用VS Code的向导创建了一个maven项目看了下pom.xml的里properties,maven.compiler.source和maven.compiler.target是1.7,写成1.7也不报错了

结合报错信息“请使用 1.6 或更高版本”,让人马上联想到写成1.7可能更正确

<properties>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

<maven.compiler.source>11</maven.compiler.source>

<maven.compiler.target>11</maven.compiler.target>

</properties>

<dependency>

<groupId>com.tencentcloudapi</groupId>

<artifactId>tencentcloud-sdk-java</artifactId>

<version>3.1.13</version>

</dependency>

第2段话注意塞到 <dependencies> </dependencies> 里面,里面的版本号以你在这里选取的为准https://github.com/TencentCloud/tencentcloud-sdk-java/releases

4、mvn install 安装依赖到本地

命令行cd test进到第一步创建的test项目(目录)

mvn install -DgroupId=com.tencentcloudapi -DartifactId=tencentcloud-sdk-java -Dversion=3.1.13

这里注意末尾的版本号跟前面pom.xml里的版本号一致

5、编译

mvn compile

6、执行

mvn exec:java -Dexec.mainClass="com.testing.App"

这里的App,实际是test\target\classes\com\testing目录里的App.class,由test\src\main\java\com\testing目录里的App.java编译得来

test\src\main\java\com\testing目录里的App.java是创建maven项目时自动生成的,api explorer里获取的源码DescribeCdnDomainLogs.java(文件命名跟api explorer里自动生成的类名即接口名保持一致即可,这里以DescribeCdnDomainLogs这个接口为例)跟App.java放在同一目录

api explorer生成的代码开头少一句话:package com.testing;

加上这句话,生成的DescribeCdnDomainLogs.class就跟App.class在同一目录,如果缺这句话,即使DescribeCdnDomainLogs.java跟App.java在同一个目录也没用,生成的DescribeCdnDomainLogs.class会在test\target\classes\根目录目录,而不是test\target\classes\com\testing目录

运行的时候就得执行mvn exec:java -Dexec.mainClass="DescribeCdnDomainLogs" (注意不是"com.testing.DescribeCdnDomainLogs",com.testing.没了)

如果你在DescribeCdnDomainLogs.java开头给加上了package com.testing; 那运行的时候就是mvn exec:java -Dexec.mainClass="com.testing.DescribeCdnDomainLogs"

编译和执行可以2步连在一起搞:mvn compile exec:java -Dexec.mainClass="com.testing.DescribeCdnDomainLogs"

如果DescribeCdnDomainLogs.java代码最后一句没有System.exit(0); 那么,执行的时候会有如下WARNING瑕疵

如何解决这个瑕疵,有2种办法:

①带参数-Dexec.cleanupDaemonThreads=false执行:mvn compile exec:java -Dexec.mainClass="com.testing.DescribeCdnDomainLogs" -Dexec.cleanupDaemonThreads=false

②修改DescribeCdnDomainLogs.java代码,给main函数最后一句增加System.exit(0);

然后执行mvn compile exec:java -Dexec.mainClass="com.testing.DescribeCdnDomainLogs"

根据报错信息“This is not a problem with exec:java, it is a problem with the running code. Although not serious, it should be remedied.”来看,主要还是代码问题,所以我倾向给main函数加一句代码解决,而不是在执行环节加特定参数。

举例:

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
腾讯云Java SDK maven使用方式的详细介绍
①比较VS2019和VS Code,Visual Studio 2019支持C#/C++/Python/Node.js,安装VS2019,腾讯云好几种SDK都能使用了,真方便,但是不支持Java,而VS Code轻量支持Java,够用了
用户7118204
2020/04/06
2K0
maven常见命令及打包方式
可以打包后的文件存放到项目的 target 目录下,打包好的文件通常都是编译后生成的class文件。
全栈程序员站长
2022/08/25
9880
Maven相关:mvn的配置和简单命令
3. 生成target目录,编译、测试代码,生成测试报告,生成jar/war文件 :
JQ实验室
2022/02/09
1.1K0
Maven相关:mvn的配置和简单命令
maven常用命令
##查看maven版本 mvn --version ##创建基于maven web archetype的 maven web工程 ##创建maven的spring web工程 http://www.mkyong.com/maven/how-to-create-a-web-application-project-with-maven/ mvn archetype:generate -DgroupId={project-packaging} -DartifactId={project-name} -Darch
陈不成i
2021/06/29
6360
Maven (mvn) 详解:从入门到精通
Maven 是一款基于 POM(Project Object Model)的构建工具,主要用于项目依赖管理、生命周期管理和自动化构建。无论是小型项目还是企业级应用,Maven 都提供了强大的功能,帮助开发者提高开发效率。
默 语
2024/12/24
4920
maven常用命令集合(收藏大全)
如果你是初学者,或者是自学者!你可以加小编微信(xxf960326)!小编可以给你学习上,工作上的一些建议以及可以给你(免费)提供学习资料!最重要我们还可以交个朋友!你在学习上有什么问题都可以加小编微信进行私聊!小编都会为你解答!
Java学习
2018/08/27
11.9K0
一个小时学会Maven
在开发中经常需要依赖第三方的包,包与包之间存在依赖关系,版本间还有兼容性问题,有时还里要将旧的包升级或降级,当项目复杂到一定程度时包管理变得非常重要。
张果
2018/10/09
2.7K0
一个小时学会Maven
Maven入门教程
Maven是Java项目构建工具,可以用于管理Java依赖,还可以用于编译、打包以及发布Java项目,类似于JavaScript生态系统中的NPM。
Fundebug
2019/01/08
1.1K0
软件测试|比Selenium更加强大的Playwright
Playwright 是由微软的研发团队所开发的一款 Web 自动化测试框架,这个框架具有多平台、跨语言的特点。除了基本的自动化测试能力之外,同时它还具备非常强大的录制功能、追踪功能。以下是 Playwright 与 Selenium 的对比。
霍格沃兹测试开发Muller老师
2023/01/06
1.5K0
【Java 进阶篇】Maven 使用详解:打造便捷高效的项目构建利器
在软件开发的道路上,项目构建是一个不可避免的过程。而Maven,作为一个强大的项目管理和构建工具,为开发者提供了一套标准化的项目结构和构建流程。本文将围绕Maven的使用详解,手把手地带你探索Maven的世界,让你在项目构建的征途上更加得心应手。
繁依Fanyi
2024/01/02
1.5K0
【Java 进阶篇】Maven 使用详解:打造便捷高效的项目构建利器
maven搭建详解
1, 下载 官方下载地址: maven_download, 最新版 apache-maven-3.0.5-bin.tar.gz 官方地址: maven 2, 解压 tar zxvf apache-maven-3.0.5-bin.tar.gz (例如安装目录为: /home/homer/Apache-maven/apache-maven-3.0.5) 3, 安装 1) 编辑 /etc/profile sudo vi /etc/profile 2) 配置 配置maven安装目录: export MAVEN_HO
程序员同行者
2018/07/02
9600
04 . Jenkins部署Java项目
https://img2020.cnblogs.com/blog/1871335/202006/1871335-20200604173550160-1696672787.png
iginkgo18
2020/09/27
7350
04 . Jenkins部署Java项目
Idea创建maven项目流程、修改默认配置、及注意事项
windows7+jdk1.7.0_80+tomcat8.5.41+maven3.0.5+idea2017.3.6
秋雨
2019/07/22
7.5K0
Idea创建maven项目流程、修改默认配置、及注意事项
从零开始用好 Maven : 从 Hello World 到日常使用
Apache Maven 是一个软件项目管理工具。基于项目对象模型(POM)的理念,通过一段核心描述信息来管理项目构建、报告和文档信息。
用户1257393
2018/12/28
9480
Maven Web项目
这里注意和java项目的几个区别:没有test项目、没有在主项目源码下面建立指定的包结构层次.
郑小超.
2023/10/16
2910
Maven Web项目
maven实战笔记-3
    <project xmlns="http://maven.apache.org/POM/4.0.0"
py3study
2020/01/14
5570
Maven NetBeans(下)
Maven 将会开始构建该项目。你可以在 NetBeans 的终端里查看输出的日志信息:
陈不成i
2021/07/15
3850
Maven基本知识
​ 将 apache-maven-3.5.0-bin.zip 解压到一个非中文无空格的目录下。 例如:
OY
2022/03/17
7360
Maven基本知识
maven学习(上)- 基本入门用法
一、下载及安装 1.1 下载maven 3.1.1 先到官网http://maven.apache.org/download.cgi 下载最新版本(目前是3.1.1 ),下载完成后,解压到某个目录(本文中是C:\Java\maven-3.1.1) 2.1 配置环境变量 系统环境变量里,添加MAVEN_HOME(或M2_HOME),其值为C:\Java\maven-3.1.1,然后PATH环境变量最后附加上";%MAVEN_HOME%\bin" 检测方法: a) 重新进入命令行(DOS窗口)模式,输入 ech
菩提树下的杨过
2018/01/24
8180
maven学习(上)- 基本入门用法
【快速入门大数据】前沿技术拓展Spark,Flink,Beam
Spark、Flink、Beam Beam编写完适用于Spark、Flink使用
瑞新
2021/12/06
6170
【快速入门大数据】前沿技术拓展Spark,Flink,Beam
相关推荐
腾讯云Java SDK maven使用方式的详细介绍
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验