• [技术干货] ActFramework 入门指南——创建新项目
    首先让我们来建立一个Hello ActFramework项目。 ActFramework 提供了完整的 Maven 生态,我们可以借由 Maven 很快的展开一个 ActFramework 的基础项目。让我们给还没用熟IDEA的小伙伴一点提示。新增一个 Maven 的展开项org.actframeworkarchetype-quickstart1.8.23.0然后填写上你项目的基本信息然后根据你的需要配置一下你的项目信息。 基本上除了路径也不需要额外配置。 最后创建项目,等着 Maven 自动展开就好啦。 PS:建议同学们按照Java 比较通用的命名规则来对项目进行命名,请不要学习我瞎命名。
  • CloudIDE 中配置编译构建服务中的maven 设置
    问题: 在使用CloudIDE 过程中遇到一个问题,代码在编译构建服务中构建成功,但是在CloudIDE中却因为下载不了依赖包而构建失败,这是应为两者的maven 依赖仓的配置不一样,下面分享下如何在CloudIDE中配置和编译构建服务一样的maven 依赖仓。使用的CloudIDE 服务的链接: https://devcloud.cn-north-4.huaweicloud.com/cloudide/home1,首先去编译构建服务 新建一个构建任务,输入“cat ~/.m2/settings.xml”,:2, 运行构建任务,并从日志中复制出settings.xml:3, 复制后去掉前面的时间戳,并删除 <localRepository> 标签:4,打开要配置的cloudide实例,在工程下新建文件settings.xml, 经获取的settings.xml 内容复制到新建的文件中保存:5, 打开teminal 执行“cp settings.xml ~/.m2/settings.xml”6, 完成maven 的配置, 在命令行执行mvn package, 依赖包不能下载的问题就解决了
  • maven镜像仓库缺少mybatis 3.5.2 版本
    如果可以的话 希望可以更新最新版本
  • [热门活动] Maven构建java工程操作hdfs实例
    Maven构建java工程操作hdfs实例腾科教育以为理论+实操为主的教学,带你进入大数据开发基础。每一步都带着你,让你一步一步实现自已的大数据开发梦想。构建maven工程 导入maven类包 <dependencies>     <dependency>       <groupId>junit</groupId>       <artifactId>junit</artifactId>       <version>4.11</version>       <scope>test</scope>     </dependency>     <dependency>       <groupId>org.apache.hadoop</groupId>       <artifactId>hadoop-client</artifactId>       <version>2.8.1</version>     </dependency>   </dependencies>编写Junit单元测试类package net.togogo.hdfsproject;   import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.*; import org.junit.Before; import org.junit.Test;   import java.io.FileNotFoundException; import java.io.IOException; import java.net.URI;   public class HdfsClientTest {     FileSystem fs = null;       @Before     public void init() throws Exception {           // 构造一个配置参数对象,设置一个参数:我们要访问的hdfs的URI         // 从而FileSystem.get()方法就知道应该是去构造一个访问hdfs文件系统的客户端,以及hdfs的访问地址         // new Configuration();的时候,它就会去加载jar包中的hdfs-default.xml         // 然后再加载classpath下的hdfs-site.xml         Configuration conf = new Configuration();         conf.set("fs.defaultFS", "hdfs://192.168.75.129:9000");         /**          * 参数优先级: 1、客户端代码中设置的值 2、classpath下的用户自定义配置文件 3、然后是服务器的默认配置          */         conf.set("dfs.replication", "3");           // 获取一个hdfs的访问客户端,根据参数,这个实例应该是DistributedFileSystem的实例         // fs = FileSystem.get(conf);           // 如果这样去获取,那conf里面就可以不要配"fs.defaultFS"参数,而且,这个客户端的身份标识已经是hadoop用户         fs = FileSystem.get(new URI("hdfs://192.168.75.129:9000"), conf, "hadoop");       }       @Test     public void testAddFileToHdfs(){         // 要上传的文件所在的本地路径         Path src = new Path("D:\\stone\\HCNA-AI\\images\\idcard.jpg");         // 要上传到hdfs的目标路径         Path dst = new Path("/togogo/idcard.jpg");         try {             fs.copyFromLocalFile(src,dst);             System.out.println("文件上传成功...");         } catch (IOException e) {             e.printStackTrace();         }     }       @Test     public void testDelFileFromHdfs(){         // 要上传到hdfs的目标路径         Path dst = new Path("/togogo/work");         try {            fs.delete(dst,true);             System.out.println("文件删除成功...");         } catch (IOException e) {             e.printStackTrace();         }     }       /**      * 查看目录信息,只显示文件      *      * @throws IOException      * @throws IllegalArgumentException      * @throws FileNotFoundException      */     @Test     public void testListFiles() throws FileNotFoundException, IllegalArgumentException, IOException {           // 思考:为什么返回迭代器,而不是List之类的容器         RemoteIterator           while (listFiles.hasNext()) {             LocatedFileStatus fileStatus = listFiles.next();             System.out.println(fileStatus.getPath().getName());             System.out.println(fileStatus.getBlockSize());             System.out.println(fileStatus.getPermission());             System.out.println(fileStatus.getLen());             BlockLocation[] blockLocations = fileStatus.getBlockLocations();             for (BlockLocation bl : blockLocations) {                 System.out.println("block-length:" + bl.getLength() + "--" + "block-offset:" + bl.getOffset());                 String[] hosts = bl.getHosts();                 for (String host : hosts) {                     System.out.println(host);                 }             }             System.out.println("--------------为angelababy打印的分割线--------------");         }     }       /**      * 查看文件及文件夹信息      *      * @throws IOException      * @throws IllegalArgumentException      * @throws FileNotFoundException      */     @Test     public void testListAll() throws FileNotFoundException, IllegalArgumentException, IOException {           FileStatus[] listStatus = fs.listStatus(new Path("/"));           String flag = "d--             ";         for (FileStatus fstatus : listStatus) {             if (fstatus.isFile())  flag = "f--         ";             System.out.println(flag + fstatus.getPath().getName());         }     } }
  • 构建中,在maven中配置了jdk1.6,然后devcloud 使用maven编译最低1.7,这个怎么破?
    在maven中配置了好多jdk是1.6的项目,但是devcloud使用的最低是jdk1.7,这个怎么破?
  • [问题求助] Maven插件如何安装
    8.1 JAVA SDK 使用指南中提到需安排Maven插件:m2e - Maven Integration for Eclipse (includes Incubating components),网上资料很不一致,可否给出一个简单的说明谢谢
  • 申请了maven仓库, deploy失败怎么解决?
    Uploading: https://devrepo.devcloud.huaweicloud.com/02/nexus/content/repositories/458d05c7f60641c29565b4c5ef151740_1_0/com/icss/newretail/zhmd-api/1.0/zhmd-api-1.0.pom[INFO] ------------------------------------------------------------------------[INFO] Reactor Summary:[INFO][INFO] zhmd-api ........................................... FAILURE [  1.675 s][INFO] common-api ......................................... SKIPPED[INFO] ai-center-api ...................................... SKIPPED[INFO] ai-center-api-service .............................. SKIPPED[INFO] ai-center-api-endpoint ............................. SKIPPED[INFO] delivery-center-api ................................ SKIPPED[INFO] delivery-center-api-service ........................ SKIPPED[INFO] delivery-center-api-endpoint ....................... SKIPPED[INFO] goods-center-api ................................... SKIPPED[INFO] goods-center-api-service ........................... SKIPPED[INFO] goods-center-api-endpoint .......................... SKIPPED[INFO] member-center-api .................................. SKIPPED[INFO] member-center-api-service .......................... SKIPPED[INFO] member-center-api-endpoint ......................... SKIPPED[INFO] pay-center-api ..................................... SKIPPED[INFO] pay-center-api-service ............................. SKIPPED[INFO] pay-center-api-endpoint ............................ SKIPPED[INFO] promotion-center-api ............................... SKIPPED[INFO] promotion-center-api-service ....................... SKIPPED[INFO] promotion-center-api-endpoint ...................... SKIPPED[INFO] trade-center-api ................................... SKIPPED[INFO] trade-center-api-service ........................... SKIPPED[INFO] trade-center-api-endpoint .......................... SKIPPED[INFO] user-center-api .................................... SKIPPED[INFO] user-center-api-service ............................ SKIPPED[INFO] user-center-api-endpoint ........................... SKIPPED[INFO] ------------------------------------------------------------------------[INFO] BUILD FAILURE[INFO] ------------------------------------------------------------------------[INFO] Total time: 2.716 s[INFO] Finished at: 2019-04-01T21:17:35+08:00[INFO] Final Memory: 46M/354M[INFO] ------------------------------------------------------------------------[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project zhmd-api: Failed to deploy artifacts: Could not transfer artifact com.icss.newretail:zhmd-api:pom:1.0 from/to releases (https://devrepo.devcloud.huaweicloud.com/02/nexus/content/repositories/458d05c7f60641c29565b4c5ef151740_1_0/): Failed to transfer file: https://devrepo.devcloud.huaweicloud.com/02/nexus/content/repositories/458d05c7f60641c29565b4c5ef151740_1_0/com/icss/newretail/zhmd-api/1.0/zhmd-api-1.0.pom. Return code is: 401, ReasonPhrase: . -> [Help 1][ERROR]其中setting.xml文件,是在网站上下载的,检查了用户名密码是配置了的。 deploy失败的可能原因是啥? 还需要做什么设置吗?
  • [转载]Maven依赖的JAR包下载慢?赶紧看过来
    [转载]Maven依赖的JAR包下载慢?赶紧看过来2019年03月27日 16:24:01 DevCloud 阅读数:25更多个人分类: 技术交流文:华为云DevCloud 亲亲土豆相信许多JAVA开发者在日常工作中时常会碰到这种情况,那就是编译Maven工程时,工程所依赖的jar包文件下载非常慢,甚至经常出现下载不成功的问题,今天,小编就给大家讲讲如何提升Maven依赖包的下载速度由于Maven工程默认配置的依赖仓库主要部署在国外,从国内下载速度较慢,国内许多高校或公司通过架设开源镜像站来解决该问题,这些镜像站一般都是向国内开发者开放的,我们可以通过配置国内的镜像来解决下载速度慢的问题。所谓开源镜像站,指的是存放开源操作系统、开源组件等镜像文件的站点,国内的镜像站通过定期/实时同步国外源站的开源操作系统或组件,为国内用户提供高速、稳定的依赖包下载服务。目前国内比较常用的镜像站包括华为开源镜像站、清华大学镜像站、中科大镜像站等等,今天主要以华为开源镜像站为示例给大家进行讲解方式一,配置针对所有项目的全局镜像库在Maven安装目录下找到Maven的配置文件setting.xml,里面有个<mirrors>配置项目,这里配置了所有的全局镜像,你可以在<mirrors>下增加以下节点:<mirror>    <id>huaweicloud</id>    <mirrorOf>*</mirrorOf>    <url>https://mirrors.huaweicloud.com/repository/maven/</url></mirror>如下图所示:需要注意的是,<mirrors>下配置了多个镜像库时,只有当第一个镜像库无法连接时,才会使用第二个镜像库查找jar文件,否则即使第一个镜像库里找不到想的jar文件,也不会去第二个镜像库查找。因此,若需要配置多个镜像库,可将<mirrorOf>设置为*,!repo1,在<profiles>标签中增加个性化配置,并在<activeProfiles>标签中将其激活,完整如下图所示:方式二,配置针对单个项目的镜像库 在项目的maven配置文件pom.xml里,添加repositories配置即可,如下:<repositories><repository><id>huaweicloud</id><name>huaweicloud</name><url>>https://mirrors.huaweicloud.com/repository/maven/</url></repository></repositories>如下图所示:注意:在pom.xml中配置了repository后,setting.xml文件中关于mirror部分的<mirrorOf>标签不能设置为*,否则pom.xml中的repository配置不会生效。<mirrorOf>需要配置为*,!huaweicloud将huaweicloud镜像设为例外,如下图:更多信息可以参考华为开源镜像站。来源:https://devcloud.blog.csdn.net/article/details/88848080
  • Maven构建使用非DevCloud提供的依赖仓库
    背景信息    将本地项目迁移到云上构建时,部分依赖可能无法在华为开源镜像站或软件开发云私有依赖库找到,需要从私有依赖仓库或三方仓库下载依赖,容易遇到网络不通、认证不通过等问题。此处提供一些可能的经验参考    声明:纯个人分享,对文中提到的概念、技术准确性、安全性不承担任何责任本文中提及的几种依赖仓库说明1.       华为开源镜像站-          地址:https://mirrors.huaweicloud.com/-          说明:无需配置,使用编译构建服务时,默认可从镜像站下载依赖,可满足大部分构建需求2.       软开云私有依赖库-          地址:https://devcloud.huaweicloud.com/cloudartifact/repository-          指导手册:https://support.huaweicloud.com/qs-releaseman/zh-cn_topic_0145299115.html-          说明:初次使用时需要前往私有依赖库首页初始化:https://support.huaweicloud.com/releaseman_faq/releaseman_faq_0006.html3.       公开三方仓库-          非DevCloud官方提供的仓库-          可以直接从公网访问-          无需认证(无需在settings.xml中配置认证信息)4.       需要认证的私有仓库-          搭建在私有云/本地局域网环境-          能从公网访问,但是有设置访问IP白名单限制(如果本身不具备可访问的域名或公网IP,则无法在软件开发云使用,此处不予讨论)-          需要认证(需要在settings.xml中配置认证信息)前置准备参考官方文档,创建好项目、代码仓库、Maven构建任务创建项目:https://support.huaweicloud.com/qs-codeci/codeci_qs_1001.html创建构建任务:https://support.huaweicloud.com/qs-codeci/codeci_qs_2001.html配置构建任务-使用公开三方仓库    编译构建服务提供了Action “配置Maven华为开源镜像站”,可以增加非DevCloud提供的依赖仓库。    注意:此方式目前只能配置仓库地址,不支持仓库认证信息配置,故只适合使用公开三方仓库场景操作步骤1.       在“Maven构建”前添加步骤:“配置Maven华为开源镜像站”                                              2.       在右侧步骤配置页新增仓库,填写完整仓库地址3.       保存任务,再次构建即可从公开三方仓库下载所需要的依赖包配置构建任务-使用需要认证的私有仓库    此类场景下,首先要解决编译构建服务于仓库之间网络通信问题,需要将构建服务器地址加入到私有仓库的IP白名单列表,确保构建服务可以访问私有仓库地址(具体可联系DevCloud);此外,由于软开云编译构建服务目前不支持三方仓库认证信息配置,需要通过其他方式自行配置,以下为操作步骤:1.       前往软开云私有依赖库下载Devcloud配置好的settings.xml文件参考文档:https://support.huaweicloud.com/usermanual-releaseman/releaseman_hlp_00004.html2.       参考步骤1中指导文档,修改下载好的settings.xml文件(DevCloud已经配置好的仓库无需修改,在原基础新增仓库信息即可)其中:-          reponsitory节点中配置仓库地址、仓库ID等,仓库ID为自定义值,需要与mirrorOf、server配置中填写的仓库ID对应,如示例中的snapshots、releases即为Devcloud提供的私有仓库的ID-          mirrorOf节点中,以”!仓库ID“格式增加一项,表示此仓库ID对应的仓库无需mirror代理,如!releases,!snapshots,表示releases仓库和snapshots仓库不经过mirror代理-          server节点中配置ID对应仓库的认证信息3.       将修改好的settings.xml文件放置在代码pom.xml文件同级目录并提交到软开云代码仓库4.       修改构建配置,指定使用项目中自带的settings.xml文件构建如图,在构建命令后追加 --settings settings.xml 即可5.       保存任务后再次构建,即可从指定的私有依赖仓库下载所需依赖(注意:配置私有仓库认证信息时,在settings.xml直接配置明文密码可能存在一定风险,如有需要,可联系DevCloud官方咨询密码加密方式)
  • [教程] 导入CSEJavaSDK的demo工程,遇到maven依赖问题
    有些同学在导入CSEJavaSDK的demo工程的时候,会发现maven依赖没有导入进来。代码中很多类都是红的,显示无法找到类:此时大家可以跑一下mvn clean package构建命令,看看控制台里的输出日志:关键日志如下:Non-resolvable import POM: Failure to find com.huawei.paas.cse:cse-dependency:pom:2.3.62 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced @ line 18, column 19 -> [Help 2]可以看到,日志里显示maven在尝试从maven中央仓库拉取依赖包(这是maven的默认配置,也有可能是其他的错误地址),而不是从华为云镜像站拉取依赖。这就说明该环境上的maven setting文件没有按照Day2培训中的说明进行配置,建议大家按照操作指导再配置一下maven setting文件。
  • [技术干货] 开发Demo服务,遇到IDE提示java编译版本是1.5,但JRE使用的是1.8
    有些时候我们创建或导入一个maven工程,IDE(Eclipse和IDEA之类的)会提醒我们项目编译版本和jre版本不一致。Eclipse下的错误提示信息如下图所示详细错误信息为:Build path specifies execution environment J2SE-1.5. There are no JREs installed in the workspace that are strictly compatible with this environment. The compiler compliance specified is 1.5 but a JRE 1.8 is used这是maven由于一些历史原因,默认是以jdk 1.5版本来编译工程项目的。但是我们的CSEJavaSDK项目现在实际上是跑在Java8环境了。此时有一个简单的解决方法,就是在maven工程的pom文件里显式指定打包插件使用的java语言版本:<build>   <plugins>     <plugin>       <groupId>org.apache.maven.plugins</groupId>       <artifactId>maven-compiler-plugin</artifactId>       <version>3.1</version>       <configuration>         <compilerArgument>-parameters</compilerArgument>         <encoding>UTF-8</encoding> <!--显式指定字符集为UTF-8-->         <source>1.8</source>         <target>1.8</target>       </configuration>     </plugin>   </plugins> </build>如下图所示:
  • 发生如下错误:配置没问题,maven也没问题,报了个ALPN not available for JDK SSL/TLS engine错误
    2019-03-15 14:44:07,109 [WARN] keyStore [server.p12] file not exist, please check! org.apache.servicecomb.foundation.vertx.VertxTLSBuilder.buildTCPSSLOptions(VertxTLSBuilder.java:118)2019-03-15 14:44:07,109 [WARN] trustStore [trust.jks] file not exist, please check! org.apache.servicecomb.foundation.vertx.VertxTLSBuilder.buildTCPSSLOptions(VertxTLSBuilder.java:138)2019-03-15 14:44:07,110 [WARN] keyStore [server.p12] file not exist, please check! org.apache.servicecomb.foundation.vertx.VertxTLSBuilder.buildTCPSSLOptions(VertxTLSBuilder.java:118)2019-03-15 14:44:07,110 [WARN] trustStore [trust.jks] file not exist, please check! org.apache.servicecomb.foundation.vertx.VertxTLSBuilder.buildTCPSSLOptions(VertxTLSBuilder.java:138)2019-03-15 14:44:07,295 [ERROR]  org.apache.servicecomb.foundation.vertx.client.ClientVerticle.start(ClientVerticle.java:38)io.vertx.core.VertxException: ALPN not available for JDK SSL/TLS engineat io.vertx.core.net.impl.SSLHelper.resolveEngineOptions(SSLHelper.java:86)at io.vertx.core.net.impl.SSLHelper.<init>(SSLHelper.java:144)at io.vertx.core.http.impl.HttpClientImpl.<init>(HttpClientImpl.java:133)at io.vertx.core.impl.VertxImpl.createHttpClient(VertxImpl.java:298)at org.apache.servicecomb.foundation.vertx.client.http.HttpClientPoolFactory.createClientPool(HttpClientPoolFactory.java:36)at org.apache.servicecomb.foundation.vertx.client.http.HttpClientPoolFactory.createClientPool(HttpClientPoolFactory.java:27)at org.apache.servicecomb.foundation.vertx.client.ClientPoolManager.createClientPool(ClientPoolManager.java:60)at org.apache.servicecomb.foundation.vertx.client.ClientVerticle.start(ClientVerticle.java:35)at io.vertx.core.AbstractVerticle.start(AbstractVerticle.java:106)at io.vertx.core.impl.DeploymentManager.lambda$doDeploy$8(DeploymentManager.java:483)at io.vertx.core.impl.ContextImpl.lambda$wrapTask$2(ContextImpl.java:339)at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404)at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463)at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)at java.lang.Thread.run(Thread.java:748)2019-03-15 14:44:07,315 [ERROR] deploy vertx failed, cause  org.apache.servicecomb.foundation.vertx.VertxUtils.lambda$blockDeploy$0(VertxUtils.java:102)io.vertx.core.VertxException: ALPN not available for JDK SSL/TLS engineat io.vertx.core.net.impl.SSLHelper.resolveEngineOptions(SSLHelper.java:86)at io.vertx.core.net.impl.SSLHelper.<init>(SSLHelper.java:144)at io.vertx.core.http.impl.HttpClientImpl.<init>(HttpClientImpl.java:133)at io.vertx.core.impl.VertxImpl.createHttpClient(VertxImpl.java:298)at org.apache.servicecomb.foundation.vertx.client.http.HttpClientPoolFactory.createClientPool(HttpClientPoolFactory.java:36)at org.apache.servicecomb.foundation.vertx.client.http.HttpClientPoolFactory.createClientPool(HttpClientPoolFactory.java:27)at org.apache.servicecomb.foundation.vertx.client.ClientPoolManager.createClientPool(ClientPoolManager.java:60)at org.apache.servicecomb.foundation.vertx.client.ClientVerticle.start(ClientVerticle.java:35)at io.vertx.core.AbstractVerticle.start(AbstractVerticle.java:106)at io.vertx.core.impl.DeploymentManager.lambda$doDeploy$8(DeploymentManager.java:483)at io.vertx.core.impl.ContextImpl.lambda$wrapTask$2(ContextImpl.java:339)at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404)at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463)at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)at java.lang.Thread.run(Thread.java:748)
  • [热门活动] 使用IntelliJ IDEA和Maven创建Java项目入门
    1. Maven简介Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。当你使用Maven的时候,你用一个明确定义的项目对象模型来描述你的项目,然后Maven可以应用横切的逻辑,这些逻辑来自一组共享的(或者自定义的)插件。相对于传统的项目,Maven 下管理和构建的项目真的非常好用和简单,所以这里也强调下,尽量使用此类工具进行项目构建, 它可以管理项目的整个生命周期。(1)下载Maven 官方地址:http://maven.apache.org/download.cgi (2)将文件解压到某个目录  (3)配置maven环境变量    ●Maven环境测试打开命令行窗口,输入mvn -v,如果有maven 版本信息输出则证明配置成功,否则请查看自己配置路径等是否正确。注意:安装maven前请确保已安装JDK并成功配置其环境变量。显示版本信息的命令:mvn -v 在C:\Users\Administrator下创建.m2目录的命令:mvn help:system 执行该命令后将在C:\Users\Administrator下创建.m2目录。该目录将作为本次仓库的根目录,在该目录下可以放置配置文件和repository。  (4)将maven安装目录下的conf/settings.xml文件复制到C:\Users\Administrator\.m2目录下。使用国内华为云的Maven公共仓库,下载依赖构建包速度很快,否则,maven项目默认从国外的中央仓库下载。<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">  <mirrors>    <mirror>      <id>huaweicloud</id>      <mirrorOf>*,!HuaweiCloudSDK</mirrorOf>      <url>https://repo.huaweicloud.com/repository/maven/</url>    </mirror>  </mirrors><profiles>    <profile>      <id>MyProfile</id>      <repositories>        <repository>          <id>HuaweiCloudSDK</id>          <url>https://repo.huaweicloud.com/repository/maven/huaweicloudsdk/</url>          <releases>            <enabled>true</enabled>          </releases>          <snapshots>            <enabled>false</enabled>          </snapshots>        </repository>      </repositories>    </profile></settings>2、在IntelliJ IDEA中配置maven(1)打开-File-Settings (2)Importing保留其默认值1)如下图标注2所示,Import Maven projects automatically 表示 IntelliJ IDEA 会实时监控项目的 pom.xml 文件,进行项目变动设置。2)如下图标注3 所示,在 Maven 导入依赖包的时候是否自动下载源码和文档。默认是没有勾选的,也不建议勾选,原因是这样可以加快项目从外网导入依赖包的速度,如果我们需要源码和文档的时候我们到时候再针对某个依赖包进行联网下载即可。IntelliJ IDEA 支持直接从公网下载源码和文档的。3)下图标注 4所示,可以设置导入的 VM 参数。一般这个都不需要主动改,除非项目真的导入太慢了我们再增大此参数。  3、在IntelliJ IDEA中创建Java project(1)File -> New -> Project... (2)创建HelloWorld程序 (3)设置项目名称和指定项目保存的位置(工作区目录) (4)环境搭建成功点击右上角工具栏中的运行按钮(绿色三角箭头),运行编译  创建结束后,项目代码结构如下: 4、在IntelliJ IDEA中基于Maven创建 Java 项目(1)File -> New -> Project... (2)设置GroupId和ArtifactId属性值 GroupId:是一个工程在全局中的唯一标识符,一般地,它就是工程名,使用一个完全的包名将一个工程识别出来。Artifact:是工程将要产生或需要使用的文件,可以是.jar,.war,源文件等。每个Artifact由GroupId和ArtifactId组合进行唯一识别。(3)指定Maven的安装目录  (4)指定项目保存的位置(工作区目录) (5)点击Finish后,项目代码结构如下: (6)选择根目录-> src-> main-> java文件夹,右击选择new->Java class,新建一个名称为test的java类文件: (7)运行测试程序,在编辑区右击选择Run ‘test.main()’,在控制台中能看到“hello world”说明项目创建成功:    
  • [产品体验官] 【华为开源镜像站产品体验官评测】From凯凯
    华为镜像体验报告  1.   操作体验 镜像官网较为简洁清爽,快速找到所需镜像服务     点击后。页面提供了Maven和华为镜像服务的集成方法、maven所需的依赖环境的下载地址。也提供了配置文件的下载,新手指引写的也相当详细。新手的话也可以快速集成环境,避免了配置出错的环节。 建议:虽然配置方法写的很详细,但是提供下载的页面并没有提到需要在配置文件中添加账户信息,如果不查看新手指引的话,可能就略过这个环节了。 进入新手指导才知道原来填账户信息时可以用来加速的。      2.   性能对比·        对比厂家信息: 阿里maven镜像服务、Maven中央仓 ·        性能评测环境信息如下:OS 平台 : MAC OS Mojave 10.14.2 本地开发环境 :intellij idea 网络环境 移动4G   (这两天在农村,速度还可以)jdk版本: 1.8.0_162 Maven 版本 :Apache Maven 3.5.4 评测过程:1.  打开本地已经下载的maven仓库位置,清空所有目录。调整maven的setting.xml 配置文件,保存历史版本后替换华为镜像站下载的配置文件。2.  打开现有项目工程,确认maven配置文件指向正确3.  打开IDE的终端窗口,执行安装命令: “mvn install” maven开始安装构建项目,自动下载配置项目pom文件中依赖的jar包。4.  结果如下: 阿里maven镜像服务依赖jar包下载网络最高峰值 2.8Mb,正常范围在500kb ~ 1MB 之间Pom文件下载缓慢。 项目本次构建耗费时间 8分钟 项目总依赖jar包62 个左右。结论: 除了在pom文件的下载上有点慢,其他效果很好。 Maven中央仓出了奇的慢,吃完午饭了,jar包都没有下载完,国内基本不推荐,服务器在美国没什么下载速度,还会提示包找不到。没什么可比性,国内任何一家都可以秒杀它,不过这个站提供了maven dependency查找功能,值得推荐。  华为镜像服务(未使用账户登陆)Maven依赖jar包下载网络最高峰值 1.4 Mb,正常范围在200kb ~ 800 kb 之间。Pom文件下载缓慢,比阿里镜像更加缓慢 项目本次构建耗费时间 15分钟 体验效果一般  华为镜像服务(使用账户登陆)Maven依赖jar包下载,网络最高峰值 3.6 Mb,正常范围在500kb ~ 2 MB 之间。Pom文件下载速度有明显提升,比阿里镜像更快项目本次构建耗费时间 6分钟 体验效果很棒!暂无发现无法找到的jar包。果然登陆了账户就是不一样。    3.   功能特性体验总结: 个人感觉华为Maven镜像服务提供的基础能力还是完备的,本次试用体验过程中没有出现过阻塞,项目构建成功,依赖的jar包下载很快。暂时没有遇到其他问题。        功能建议: 1.  在日常的开发工作中,常需要搜索maven的jar包dependency 描述信息用来下载jar,目前镜像站点似乎没有提供这种服务,个人想法是否可以支持jar包的查找功能。 目前提供maven dependency 查找的服务并不多,个人常用站点:https://mvnrepository.com/ (网站还是可以的,基本上都能查到日常所需)以上站点虽然提供jar包查找的功能,但是没有把版本之间的依赖关系体现的特别明白, 日常开发中,会存在升级系统框架的需求,可能因为其他框架的版本过旧造成构建失败。往往这类问题,需要花费很长的时间去解决。2.  希望华为能形成自己的生态圈吧,不光是有个镜像,推出一点华为特色的服务:例如鼓励开发者贡献自己的项目中通用组件包。提倡开源精神,增加用户粘合性。4.   满意度和推荐度本次体验感受不错,国内的maven镜像服务,主要用途也就是为了提供项目的依赖jar包的下载速度。本人会推荐身边的朋友使用,项目越大可能依赖的服务越多,依赖jar包的下载速度也方便于提高开发效率。      作者:华为云产品体验官- 凯凯 
  • [技术干货] 华为开源语言类镜像(Maven篇)
    Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。Maven这个单词来自于意第绪语(犹太语),意为知识的积累,最初在Jakata Turbine项目中用来简化构建过程。当时有一些项目(有各自Ant build文件),仅有细微的差别,而JAR文件都由CVS来维护。于是希望有一种标准化的方式构建项目,一个清晰的方式定义项目的组成,一个容易的方式发布项目的信息,以及一种简单的方式在多个项目**享JARsWiki介绍:https://zh.wikipedia.org/wiki/Apache_Maven首先,下载JDK, 地址为: http://www.oracle.com/technetwor ... ownloads/index.html, 由于Windows和Linux的配置有一定差异,因此分别进行说明。安装好之后需要设置环境变量,以jdk1.8.0_151版本为例,进入到系统环境变量的管理界面:右键计算机图标=>属性=>高级系统设置=>环境变量在系统环境变量中,点击新建,输入变量名: JAVA_HOME, 输入变量值:C:\Program Files\Java\jdk1.8.0_151(地址请根据自身情况进行修改) 打开PATH变量,在变量值的最前边添加:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 新建变量名:CLASSPATH,变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar Linux从官网下载JDK,如下图所示,也可以通过curl命令下载,命令如下:curl -O http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/jdk-8u151-linux-x64.tar.gz复制代码 通过如下命令将下载后的压缩包解压至特定的目录,以/usr/local为例:tar -zxvf -C /usr/local/ jdk-8u151-linux-x64.tar.gz在命令行中输入vim /etc/profile,编辑文件,在文件末尾增加如下的内容:export JAVA_HOME=/usr/local/jdk-8u151export JRE_HOME=/usr/local/jdk-8u151/jreexport CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/libexport PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin然后执行 source /etc/profile命令使设置生效。验证JAVAwindows打开CMD命令窗口,Linux打开终端端口,输入java -version命令,如果出现如下提示则Java安装成功。 Maven是一个项目管理工具,用来统一管理jar包,可以用来统一开发规范与工具,相信java的开发人员都听过起大名。安装Maven,首先得安装JDK,JDK的安装请参考:http://forum.huaweicloud.com/forum.php?mod=viewthread&tid=1950Maven的安装Maven的下载地址为: http://maven.apache.org/download.cgi。Windows从官网下载Maven,Windows推荐下载zip包,然后解压到一个目录,以C:\Program Files\apache-maven-3.5.0为例。(备注:路径可以选择其他盘符,但是不建议路径中包含中文及特殊字符) 打开环境变量的界面,在path变量中加入Maven的目录,如下:    Linux从官网下载Maven,Linux推荐下载tar.gz包,然后解压到一个目录,可以使用如下命令解压到指定目录:tar -zxvf -C /usr/local/         apache-maven-3.5.2-bin.tar.gz在命令行中输入vim /etc/profile,编辑文件,在文件末尾增加如下的内容:export PATH=$PATH: /usr/local/apache-maven-3.5.2/bin然后执行 source /etc/profile命令使设置生效。验证Mavemwindows打开CMD命令窗口,Linux打开终端端口,输入mvn -v命令,如果出现如下提示则Java安装成功。 配置华为开源镜像站包依赖管理是maven的重要特性之一。随着开源的运动的发展,几乎所有的软件都不可避免的使用到第三方的开源库,java的开源类库非常丰富,我们可以通过依赖的方式方便地引入到工程中使用。但随着依赖增多版本不一致、版本冲突、依赖臃肿等问题都会接踵而来,maven通过坐标(GAV)标准化地定义了每一个开源组件和依赖关系,漂亮地解决了这些问题。同时Maven还提供了一个免费中央仓,让开发者可以方便地找到全球大部分需要的第三方库。国内开发者由于网络原因,直接从中央仓下载第三包速度较慢或不稳定,**或使用国内镜像站可以很好解决该问题。下面就介绍下如何将华为开源镜像站配置为maven的默认第三方库下载源。Step1 访问华为开源镜像站(https://mirrors.huaweicloud.com/),找到maven类型镜像库。Step2 点击立即使用获取配置指导,可以选择不同的工具场景,会自动生成配置指导。(友情提示:注册使用可以免费享受CDN加速服务,下载快一倍!)Step3 配置maven镜像源    方式一:直接下载配置文件(注意备份原来的配置,避免配置丢失),替换用户目录(windows中如C:\Users\morningstar\)下的.m2目录下的setting.xml(用户配置)或mawen安装目录下的conf目录中的setting.xml(系统全局配置)。   方式二:直接点击页面复制按钮将某一段的配置粘贴到用户目录(windows中如C:\Users\morningstar\)下的.m2目录中setting.xml(用户配置)或mawen安装目录下的conf目录中setting.xml(系统全局配置)对应的配置标签对中。Maven代理配置对于企业内部需要使用代理访问外网的情况,可以在用户目录(windows中如C:\Users\morningstar\)下的.m2目录中setting.xml(用户配置)或mawen安装目录下的conf目录中setting.xml(系统全局配置)里配置代理来实现。找到setting.xml文件中的标签对,在其内配置代理信息,参考如下样例Eclipse中Maven的配置:1说明:最新版的Eclipse已经内嵌了Mevne插件m2e, 不需要安装Maven插件, 如果不做任何配置,<br>会自动连接使用maven中央库自然可以使用,但是中央库在国外, 受到中国防火墙等因素影<br>响其访问速度很慢, 只有连接到国内镜像库才能提高Maven运行速度. <br>连接到国内镜像库按照如下配置.    1 打开Eclipse的首选项设置        2 找到Maven的配置项目        3 设置Maven的全局配置文件settings.xml        说明:Eclipse会自动的使用 settings.xml 文件中包含镜像库的URL地址信息, 找到Maven镜像库位置.   4 更新配置信息        5 找到Window菜单        6 开启Maven的视图, 检查是否已经配置了镜像库        Maven 的使用,创建Maven 桌面项目        1.1 选择菜单创建Maven项目                1.2 选择项目目录结构的骨架                1.3 输入项目相关信息                1.4 Maven jar项目的目录结构            备注:因为这个步骤必须连接到Maven服务器获取相关信息, 如果配置和网络有故障则这个步骤就会出现错误!如果出现错误请使用浏览器检测是否能够访问Maven服务器的URL.    2. 创建Maven Web项目        2.1 选择菜单创建Maven项目                2.2 选择项目目录结构的骨架                2.3 输入项目相关信息                2.4 Maven war项目的目录结构        备注:因为这个步骤必须连接到Maven服务器获取相关信息, 如果配置和网络有故障则这个步骤就会出现错误!如果出现错误请使用浏览器检测是否能够访问Maven服务器的URL.        2.5 创建Web部署描述文件web.xml消除检测错误        在Eclipse中搜索添加Jar组件"坐标"    Eclipse与Maven配合提供了强大的jar组件集成功能.     1.1 更新Maven库的索引文件         说明:Mavne索引用于搜索jar组件"坐标", 更新索引以后就可以在Eclipse中搜索jar组件"坐标", 但这个功能不是必须的         注意:如果更换过Eclipse工作空间, 就需要再次更新Maven索引;    1.2 打开Maven项目中的pom.xml文件            1.3 搜索需要jar组件包"坐标"          说明:这个搜索功能是利用 1.1步骤更新Maven库的索引文件 的索引完成, 如果没有更新过索引, 这个功能失效!!     1.4 搜索结果就是在pom.xml文件中"坐标", 保存pom.xml时候会自动下载jar组件         备注:这个搜索功能是利用 Maven 仓库服务器完成的, 如果不能连接到Maven仓库服务器, 这是会发生错误!!         注意:由于版权的问题, 无法在公共Maven服务器上下载Oracle JDBC Driver    1.5 使用Maven下载的jar组件. 组件保存在本地仓库".m2"文件夹中            1.6 如果出现下载故障, 可以在检查Maven仓库正常联通后, 再删除本地仓库".m2"以后"更新Maven 项目"        在线搜索添加Jar组件"坐标"    阿里云jar组件"坐标"搜索: http://maven.aliyun.com/nexus/    1.1 阿里云jar组件"坐标"搜索        1.2 搜索结果很多, 选择需要的组件版本, 找到组件"坐标"        1.3 将找到组件"坐标" 复制到pom.xml文件中, 保存pom.xml文件时候自动下载jar组件.        1.4 下载jar组件自动保存在本地库 ".m2" 文件夹.    
总条数:123 到第
上滑加载中