首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >腾讯云Java SDK maven使用方式的详细介绍

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

原创
作者头像
Windows技术交流
修改于 2023-07-25 10:43:45
修改于 2023-07-25 10:43:45
6.5K0
举报
文章被收录于专栏:Windows技术交流Windows技术交流

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

笔记

代码语言:javascript
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
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
2.1K0
Maven相关:mvn的配置和简单命令
3. 生成target目录,编译、测试代码,生成测试报告,生成jar/war文件 :
JQ实验室
2022/02/09
1.2K0
Maven相关:mvn的配置和简单命令
Maven (mvn) 详解:从入门到精通
Maven 是一款基于 POM(Project Object Model)的构建工具,主要用于项目依赖管理、生命周期管理和自动化构建。无论是小型项目还是企业级应用,Maven 都提供了强大的功能,帮助开发者提高开发效率。
默 语
2024/12/24
8500
maven常见命令及打包方式
可以打包后的文件存放到项目的 target 目录下,打包好的文件通常都是编译后生成的class文件。
全栈程序员站长
2022/08/25
1.1K0
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
7370
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
1.1K0
maven常用命令集合(收藏大全)
如果你是初学者,或者是自学者!你可以加小编微信(xxf960326)!小编可以给你学习上,工作上的一些建议以及可以给你(免费)提供学习资料!最重要我们还可以交个朋友!你在学习上有什么问题都可以加小编微信进行私聊!小编都会为你解答!
Java学习
2018/08/27
12.1K0
一个小时学会Maven
在开发中经常需要依赖第三方的包,包与包之间存在依赖关系,版本间还有兼容性问题,有时还里要将旧的包升级或降级,当项目复杂到一定程度时包管理变得非常重要。
张果
2018/10/09
3K0
一个小时学会Maven
Maven入门教程
Maven是Java项目构建工具,可以用于管理Java依赖,还可以用于编译、打包以及发布Java项目,类似于JavaScript生态系统中的NPM。
Fundebug
2019/01/08
1.2K0
软件测试|比Selenium更加强大的Playwright
Playwright 是由微软的研发团队所开发的一款 Web 自动化测试框架,这个框架具有多平台、跨语言的特点。除了基本的自动化测试能力之外,同时它还具备非常强大的录制功能、追踪功能。以下是 Playwright 与 Selenium 的对比。
霍格沃兹测试开发Muller老师
2023/01/06
1.7K0
1. Spring 简介 + Hello World
在 Java 近20年的历史中,它经历过很好的时代,也经历过饱受诟病的时代。尽管有很多粗糙的地方,如 applet、企业级JavaBean(Enterprise JavaBean,EJB)、Java 数据对象(Java Data Object,JDO)以及无数的日志框架,但是作为一个平台,Java的历史是丰富多彩的,有很多的企业级软件都是基于这个平台构建的。Spring是Java历史中很重要的组成部分。
acc8226
2022/05/17
2760
使用mvn创建java工程的极简教程
最近开始集中精力搞java的开源项目,在这时记录一下使用mvn创建java工程的比较简单的流程,以备不时之需,适用于我等java小白~~~ 文中相关代码已上传: https://github.com/DavidLiuXh/ExampleBank 使用mvn创建java工程 安装mvn 我们之前参考官网就好: Installing Apache Maven 创建java工程 命令行执行 mvn archetype:generate -DgroupId=com.mytest -DartifactId=tes
扫帚的影子
2020/03/20
8510
04 . Jenkins部署Java项目
https://img2020.cnblogs.com/blog/1871335/202006/1871335-20200604173550160-1696672787.png
iginkgo18
2020/09/27
8440
04 . Jenkins部署Java项目
Idea创建maven项目流程、修改默认配置、及注意事项
windows7+jdk1.7.0_80+tomcat8.5.41+maven3.0.5+idea2017.3.6
秋雨
2019/07/22
17.8K0
Idea创建maven项目流程、修改默认配置、及注意事项
从零开始用好 Maven : 从 Hello World 到日常使用
Apache Maven 是一个软件项目管理工具。基于项目对象模型(POM)的理念,通过一段核心描述信息来管理项目构建、报告和文档信息。
用户1257393
2018/12/28
1.1K0
Maven Web项目
这里注意和java项目的几个区别:没有test项目、没有在主项目源码下面建立指定的包结构层次.
郑小超.
2023/10/16
4260
Maven Web项目
maven实战笔记-3
    <project xmlns="http://maven.apache.org/POM/4.0.0"
py3study
2020/01/14
6220
Maven NetBeans(下)
Maven 将会开始构建该项目。你可以在 NetBeans 的终端里查看输出的日志信息:
陈不成i
2021/07/15
4690
常用Maven插件介绍(收藏大全)
我们都知道Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,例如编译源代码是由maven- compiler-plugin完成的。进一步说,每个任务对应了一个插件目标(goal),每个插件会有一个或者多个目标,例如maven- compiler-plugin的compile目标用来编译位于src/main/java/目录下的主源码,testCompile目标用来编译位于src/test/java/目录下的测试源码。
java思维导图
2019/05/21
3.4K0
Maven基本知识
​ 将 apache-maven-3.5.0-bin.zip 解压到一个非中文无空格的目录下。 例如:
OY
2022/03/17
8290
Maven基本知识
相关推荐
腾讯云Java SDK maven使用方式的详细介绍
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档