• 初始化Maven私有依赖库任务执行攻略
    日常任务中的发布环节的初始化Maven私有依赖库任务一直没有完成,今天搜文档做功课,多次尝试后终于做出来了!首先点击任务后,跳转至2018年的时候,参加活动已经创建了,那么任务为啥没有识别呢?搜了下,没有删除的地方,那是需要传个库上去么?试试!按照文档,发布组件到依赖库刷新会员中心后,任务依赖没有完成,看来不是要这个。那么私有依赖库这里没有删除的地方,新建不了怎么办呢?换个区域试试,北京四还啥都没有呢。
  • [交流吐槽] 张小白的自动化测试工具折腾记(1)TestNG(连载中)
    敏捷开发和Devops给测试提出了相当高的要求,自动化测试工具也应运而生。从目前笔者检索到的资料来看,自动化测试工具有以下几种:(1)JUnit——Java语言的单元测试框架,另外还有衍生的NUnit(.NET的单元测试框架)等xUnit家族,如CPPUnit等等。(2)Postman——强大的Web API & HTTP 请求调试工具。(3)Selenium——Web应用的自动化测试工具,用来模拟用户在浏览器的操作。(4)Appnium——移动端(支持Android和IOS)的自动化测试工具。(5)Robot Framework——功能自动化测试框架。这是某些大厂常用的测试框架。(6)HttpClient——支持HTTP协议的客户端程序包。(7)TestNG——接口自动化测试工具,TestNG在JUNIT和NUnit的基础上增加了很多功能,支持单元自动化测试,还可以集成Selenium,Appnium和HttpClient等框架进行各种类型的自动化测试。(8)RestAssured——基于REST服务的测试过程的Java DSL。可以方便的处理REST请求并处理响应信息。(9)JMeter——基于Java的压力测试工具。(10)LoadRunner——老牌的压力测试工具。。是个收费的商业软件。我们看到,华为云推出了很多API服务,我们就以API测试最常见的TestNG,通过实例对API测试进行讲解,以此来理解一下TestNG的用法。以笔者常用的eclipse为例。首先我们需解决安装TestNG的问题。由于众所周知的原因,我们需要先配置maven的阿里云镜像(当然是否也可以用华为云镜像,读者也可以试一下)修改Users/zhang/.m2/settings.xml文件:我们建立一个Maven工程,并在工程内修改POM.xml文件如下:这样,Maven会自动下载TestNG依赖包。我们再通过eclipse的菜单Install New Software安装TestNG插件:在work with栏输入地址:http://dl.bintray.com/testng-team/testng-eclipse-release/ 并按回车键,系统会检索出TestNG:选中然后安装即可。我们在src/main/java的相关package下新建个HelloTest.java的文件,内容如下:package com.zhanghui.testing; import org.testng.annotations.Test; public class HelloTest { @Test public void testCase1() { System.out.println("Hello Zhanghui!"); } }在代码上点击右键-》RunAs=》TestNG Test系统控制台会出现以下内容:表明TestNG安装和测试成功。Suite表示测试套件,是对多个测试类进行组合而成的suite.比如用于测试基本流程的套件,用于测试促销功能的套件,甚至用于进行冒烟测试的套件等等。其中,TestNG还支持如下注解:@BeforeSuite @AfterSuite注解——在该套件(Suite)的所有测试之前/后运行,仅运行一次@BeforeClass和 @AfterClass注解——在调用当前类的第一个测试方法之前/后运行,仅运行一次@BeforeTest和@AfterTest注解——在属于test标签内的类的所有测试方法运行之前/后运行@BeforeMethod和@AfterMethod注解——在每个测试方法之前/后都运行@BeforeGroups和@AfterGroup注解——在每个group之前/后运行我们用实例示范一下:package com.zhanghui.testing; import org.testng.Assert; import org.testng.annotations.AfterClass; import org.testng.annotations.AfterGroups; import org.testng.annotations.AfterMethod; import org.testng.annotations.AfterSuite; import org.testng.annotations.AfterTest; import org.testng.annotations.BeforeClass; import org.testng.annotations.BeforeGroups; import org.testng.annotations.BeforeMethod; import org.testng.annotations.BeforeSuite; import org.testng.annotations.BeforeTest; import org.testng.annotations.Test; public class BeforeAfterTest {   @Test(groups="group1")   public void test1() {   System.out.println("test1 from group1");   Assert.assertTrue(true);   }      @Test(groups="group1")   public void test11() {   System.out.println("test11 from group1");   Assert.assertTrue(true);   }      @Test(groups="group2")   public void test2()    {   System.out.println("test2 from group2");   Assert.assertTrue(true);   }   @Test(groups="group2")   public void test21()    {   System.out.println("test21 from group2");   Assert.assertTrue(true);   }   @BeforeTest   public void beforeTest()    {   System.out.println("beforeTest");   }      @AfterTest   public void afterTest()    {   System.out.println("afterTest");   }      @BeforeClass   public void beforeClass()    {   System.out.println("beforeClass");   }      @AfterClass   public void afterClass()    {   System.out.println("afterClass");   }      @BeforeSuite   public void beforeSuite()    {   System.out.println("beforeSuite");   }      @AfterSuite   public void afterSuite()    {   System.out.println("afterSuite");   }      //只对group1有效   @BeforeGroups(groups="group1")   public void beforeGroups()    {   System.out.println("beforeGroups1");   }      //只对group1有效   @AfterGroups(groups="group1")   public void afterGroups()    {   System.out.println("afterGroups1");   }      @BeforeMethod   public void beforeMethod()    {   System.out.println("beforeMethod");   }      @AfterMethod   public void afterMethod()    {   System.out.println("afterMethod");   } }结果如下:[RemoteTestNG] detected TestNG version 7.3.0 beforeSuite beforeTest beforeClass beforeMethod test1 from group1 afterMethod beforeMethod test11 from group1 afterMethod beforeMethod test2 from group2 afterMethod beforeMethod test21 from group2 afterMethod afterClass afterTest PASSED: test1 PASSED: test11 PASSED: test2 PASSED: test21 ===============================================     Default test     Tests run: 4, Failures: 0, Skips: 0 =============================================== afterSuite =============================================== Default suite Total tests run: 4, Passes: 4, Failures: 0, Skips: 0 ===============================================我们来做个简单的分析:Suite>Test>Class>Method. TestNG会根据本class中的以上顺序依次完成相关的Before注解的执行,然后在测试结束时依次倒过来完成After注解的执行。它也会根据每个 @Test注解的group,依次将本group下的所有test执行完,再执行下一个group.
  • [问题求助] maven jdk14的项目无法编译
    maven选择只有 jdk11, jdk14的项目无法编译,能否增加支持一下,非常感谢 ### 异常 `java.lang.IllegalArgumentException: invalid flag: --release` ### pom.xml 片段 ``` org.apache.maven.plugins maven-compiler-plugin ${maven-compiler-plugin} 14 14 14 true --enable-preview -Amapstruct.suppressGeneratorTimestamp=true -Amapstruct.suppressGeneratorVersionInfoComment=true -Amapstruct.verbose=true org.projectlombok lombok ${lombok.version} org.mapstruct mapstruct-processor ${org.mapstruct.version} ```
  • [技术干货] 通过 Maven 编译打包 Java + Scala 混合项目
    ## 1 - 问题描述 ### 1.1 背景说明 为客户提供样例代码,测试中需要对 Java + Scala 编写的 Maven 项目进行编译打包,由于 依赖了部分外部 jar 包,也就是有部分 jar 包没有在 pom.xml 中指定,导致编译失败。 ### 1.2 存在的问题 原有样例代码中,pom.xml 引入了 `org.scala-tools.maven-scala-plugin` 插件(),用于打包 Scala 项目,其配置方式如下: ```xml <plugin> <groupId>org.scala-tools</groupId> <artifactId>maven-scala-plugin</artifactId> <version>2.15.2</version> <configuration> <recompileMode>modified-only</recompileMode> </configuration> <executions> <execution> <id>main-scalac</id> <phase>process-resources</phase> <goals> <goal>add-source</goal> <goal>compile</goal> </goals> </execution> </executions> </plugin> ``` 该插件从2011年起就没有更新过,官网地址也已失效,无法找到有效的支持文档。 ## 2 - 问题解决 ### 2.1 方法一:通过scope=system引入外部依赖 Maven 支持在 dependency 中引入系统依赖,其中 `scope = system` 与 `scope = provided` 的依赖范围一致:**只在编译和测试范围内有效,运行时范围内无效**。具体配置示例如下: ```xml <dependency> <groupId>com.huawei.bigdata</groupId> <artifactId>spark-client</artifactId> <scope>system</scope> <systemPath>${project.basedir}/libs/spark-client.jar</systemPath> </dependency> ``` 将所有的外部 jar 包都通过这种方式引入,即可正常编译。 但由于外部依赖包通常都会比较多,这种方式维护成本太高,所以不予考虑。 ### 2.2 方法二:通过新插件指定外部依赖 经过搜索,找到了一款新插件:,pom.xml 中这样配置: ```xml <plugin> <groupId>net.alchim31.maven</groupId> <artifactId>scala-maven-plugin</artifactId> <version>3.2.1</version> <executions> <execution> <id>scala-compile-first</id> <phase>process-resources</phase> <goals> <goal>add-source</goal> <goal>compile</goal> </goals> </execution> <execution> <id>scala-test-compile</id> <phase>process-test-resources</phase> <goals> <goal>add-source</goal> <goal>testCompile</goal> </goals> </execution> </executions> <configuration> <args> <!-- 编译时使用 libs 目录下的 jar 包,通过 mvn scala:help 查看说明 --> <arg>-extdirs</arg> <arg>${project.basedir}/libs</arg> </args> <scalaVersion>2.11.8</scalaVersion> </configuration> </plugin> ``` 通过 -extdirs 参数,指定外部依赖的 jar 包。 其他参数的查看:在终端窗口中,通过命令 mvn scala:help 查看主要配置项参数,例如: ![image.png](https://bbs-img-cbc-cn.obs.cn-north-1.myhuaweicloud.com/data/attachment/forum/202008/04/165332edbzm0f9p28he0vu.png) 更详细的使用说明,请参考: **编译、打包用法:** (1) 直接在 IDEA 的 Maven -> Project -> Lifecucle -> compile | package 进行编译或打包; (2) 在终端窗口,通过如下命令进行编译打包: ```bash mvn clean scala:compile compile package ``` 说明:在 compile 前加 scala:compile,这是该插件提供的选项,表示:先编译scala,再编译java,最后打包。
  • [问题求助] Windows下进行设备接入IoTDA准备工作时执行mvn install出现错误
    这个错误是出现了什么问题,该如何解决呀?
  • [问题求助] 私有Nexus仓库可以设置代理访问华为Maven仓库么?
    您好,公司内部Nexus私有仓库可以代理华为Maven仓库么?像阿里云的公开Maven仓库一样。如是,代理地址是 https://mirrors.huaweicloud.com/repository/maven/  么? Nexus 2还支持么? 谢谢。
  • [迁移工具] 从华为云maven仓下载下来的lz4-1.2.0.jar包用分析扫描工具扫描仍然报错误
    用分析扫描工具扫描hadoop的包,发现lz4-1.2.0.jar需要移植,从指定目录下载后重新构建,发现仍然报错。并且从中央仓库和华为云下载发现md5的值是一样的
  • [交流吐槽] WeLink的SDK,后期会上传maven中央仓库吗?
    如题,WeLink的API调试工具那里,提供了SDK的下载,但是下载下来是源码。后期SDK的更新,我们不方便实时获取。这块,后期会上传maven的中央仓库吗?
  • [问题求助] maven构建是报错,说缺少pom.xml,原因是没找到product_demo在哪里下载
    在做实验手册的第第四个实验时,代码托管,其中让下载product_demo,没有找到在哪儿下,我本机没有,是需要在哪儿下载么,所以在构建的时候就报错了,说找不到里面的pom.xml文件,请各位大神指导下,在哪里“下载并解压附件工程文档的源代码到本地”?
  • [交流吐槽] Maven 镜像添加gradle plugins仓库
    Maven 镜像仓库 请求添加gradle plugins仓库: https://plugins.gradle.org/m2/ 这样gradle用起来就更爽了
  • [交流分享] 鲲鹏maven仓(基于CentOS的鲲鹏软件仓库)使用说明
    【使用说明】仓库地址为:https://mirrors.huaweicloud.com/kunpeng/yum/el/7/aarch64/Packages/大数据的下载地址为:https://mirrors.huaweicloud.com/kunpeng/yum/el/7/aarch64/Packages/bigdata/Web的下载地址为:https://mirrors.huaweicloud.com/kunpeng/yum/el/7/aarch64/Packages/web/分布式存储的下载地址为:https://mirrors.huaweicloud.com/kunpeng/yum/el/7/aarch64/Packages/ceph/数据库的下载地址为:https://mirrors.huaweicloud.com/kunpeng/yum/el/7/aarch64/Packages/database/云&虚拟化的下载地址为:https://mirrors.huaweicloud.com/kunpeng/yum/el/7/aarch64/Packages/cloud/原生应用的下载地址为:https://mirrors.huaweicloud.com/kunpeng/yum/el/7/aarch64/Packages/native/1、备份配置文件:mv /etc/yum.repos.d/ /etc/yum.repos.d-bak2、将新配置写入repo文件:mkdir /etc/yum.repos.decho -e "[kunpeng]\nname=CentOS-kunpeng - Base - mirrors.huaweicloud.com\nbaseurl=https://mirrors.huaweicloud.com/kunpeng/yum/el/7/aarch64/\ngpgcheck=0\nenabled=1" >/etc/yum.repos.d/CentOS-Base-kunpeng.repo3、更新yum源配置:yum clean all          # 清除系统所有的yum缓存yum makecache         # 生成yum缓存yum update【精华帖汇总】:提供鲲鹏解决方案的移植、部署、调优端到端使用指导和一站式资源获取。请选择解决方案大数据Web分布式存储数据库云&虚拟化原生应用大数据精华帖汇总:https://bbs.huaweicloud.com/forum/thread-27853-1-1.htmlWeb精华帖汇总:https://bbs.huaweicloud.com/forum/thread-26092-1-1.html分布式存储精华帖汇总: https://bbs.huaweicloud.com/forum/thread-26748-1-1.html数据库精华帖汇总:https://bbs.huaweicloud.com/forum/thread-26495-1-1.html云&虚拟化精华帖汇总:https://bbs.huaweicloud.com/forum/thread-26458-1-1.html原生应用精华帖汇总:https://bbs.huaweicloud.com/forum/thread-28135-1-1.html【相关网址】鲲鹏社区:https://www.huaweicloud.com/kunpeng/鲲鹏论坛:https://bbs.huaweicloud.com/forum/forum-923-1.html鲲鹏文档中心:https://support.huaweicloud.com/kunpeng/index.html免责声明:https://mirrors.huaweicloud.com/kunpeng/yum/el/7/aarch64/下载使用前必读_华为开源镜像站法律声明_重要.pdf
  • [问题求助] 【问题反馈】maven仓的lz4路径存在重复
    maven仓中如下两个路径都是lz4-java -*.jar包的归档路径,存在重复且需要确认正确的归档路径(lz4跟lz4-java对应的jar是同一个):https://mirrors.huaweicloud.com/repository/maven/kunpeng/net/jpountz/lz4/lz4/https://mirrors.huaweicloud.com/repository/maven/kunpeng/org/lz4/lz4-java/
  • [问题求助] 【问题反馈】maven仓存在重复disclaimer-1.0.0.jar包归档路径
     当前maven仓存在重复disclaimer-1.0.0.jar包归档路径:https://mirrors.huaweicloud.com/repository/maven/kunpeng/readme/disclaimer/1.0.0/https://mirrors.huaweicloud.com/repository/maven/kunpeng/Readme/Disclaimer/1.0.0/另外:https://mirrors.huaweicloud.com/repository/maven/kunpeng/readme/readme/1.0/readme-1.0.jar 路径不存在;https://mirrors.huaweicloud.com/repository/maven/kunpeng/readme/readme/1.0.0/readme-1.0.0.jar跟https://mirrors.huaweicloud.com/repository/maven/kunpeng/readme/disclaimer/1.0.0/disclaimer-1.0.0.jar是同一个jar包;
  • 问题反馈,maven仓正文2个jar包不可用
    在编辑maven工程时,发现如下2个jar包不可用。https://mirrors.huaweicloud.com/repository/maven/org/apache/hadoop/hadoop-mapreduce-client-jobclient/2.7.3.2.6.3.0-235/hadoop-mapreduce-client-jobclient-2.7.3.2.6.3.0-235-tests.jarhttps://mirrors.huaweicloud.com/repository/maven/org/apache/hadoop/hadoop-hdfs/2.7.3.2.6.3.0-235/hadoop-hdfs-2.7.3.2.6.3.0-235-tests.jar用IE打开也无法下载。用IE打开上一级目录,可以看到这2个文件名,但点击也无法下载。请处理。
  • [交流分享] maven编译如何优先从Kunpeng镜像下载jar包
    场景:    Maven仓部分jar包依赖x86 so,无法在鲲鹏上直接使用,需要在鲲鹏上重新编译,部分jar包已编译好放在鲲鹏maven仓内(https://mirrors.huaweicloud.com/repository/maven/kunpeng/),可以直接使用,只需在maven配置文件内配置远程仓优先从鲲鹏maven仓搜索,找不到再从其它仓搜索。  配置文法:     1.  编辑配置文件${maven.home}/conf/settings.xml     2.  profiles标签下增加鲲鹏maven仓 <profile>      <id>securecentral</id>      <activation>            <activeByDefault>true</activeByDefault>      </activation>       <repositories>        <repository>          <id>1central</id>          <url>https://mirrors.huaweicloud.com/repository/maven/kunpeng/</url>          <releases>            <enabled>true</enabled>          </releases>        </repository>         <repository>          <id>2central</id>          <url> https://mirrors.huaweicloud.com/repository/maven/</url>          <releases>            <enabled>true</enabled>          </releases>        </repository>      </repositories>        <pluginRepositories>        <pluginRepository>          <id>3central</id>          <url>https://mirrors.huaweicloud.com/repository/maven/kunpeng/</url>          <releases>            <enabled>true</enabled>          </releases>        </pluginRepository>        <pluginRepository>          <id>4central</id>          <url>https://mirrors.huaweicloud.com/repository/maven/</url>          <releases>            <enabled>true</enabled>          </releases>        </pluginRepository>      </pluginRepositories>    </profile>                
总条数:123 到第
上滑加载中