• =========
  • https://www.techempower.com/benchmarks/#section=data-r12&hw=peak&test=json
  • =========
  • Developing Vert.x modules with Gradle
  • Clone the template project
  • Outputs
  • Configuring the project
  • Overriding default Vert.x configuration
  • Other useful Gradle tasks
  • Setup your IDE
  • Changing the dependencies of your project
  • Installing your module in Maven local
  • Pushing your module to Maven
  • Registering your module in the Module Registry
  • Next steps

Developing Vert.x modules with Gradle

In this guide we'll show you how to develop a Vert.x project using Gradle.

Clone the template project

We provide a template Gradle project which you can clone to get you started.

Clone it locally

git clone https://github.com/vert-x/vertx-gradle-template.git my-vertx-module

Where my-vertx-module is the name you want to give your project.

Remove the origin

git remote rm origin

And add your new origin

git remote add origin <path to your repo>

Let's run the tests to make sure everything is working

cd my-vertx-module
./gradlew test

You should use the Gradle Wrapper (./gradlew) to run all Gradle tasks. You do not need to install Gradle manually. Take a look atbuild.gradle for a list of the available tasks.

Outputs

The outputs of the project are:

  • The Vert.x module zip file.
  • A jar that corresponds to the module will also be produced. This is useful when you have another project which depends on the classes from your module, as it allows you to add it as a standard Gradle build dependency in your other project.

The outputs are created in the build directory as per normal.

Configuring the project

You configure many things in gradle.properties:

  • modownermodname and version determine the name of the module as described in the modules manual

  • pullInDeps determines whether all module dependencies should be packaged into the module as nested modules.

It also contains various properties used to configure versions of various dependencies.

Overriding default Vert.x configuration

If you want to override any Vert.x platform configuration, e.g. langs.propertiescluster.xml or logging configuration, you can add those files to the directory src/main/platform_lib - these will then be added to the Vert.x platform classpath when you run the module with ./gradlew runMod

Other useful Gradle tasks

Open build.gradle and take a look at the comments there for a list of useful tasks supported by the build script.

Setup your IDE

You can use the idea and eclipse Gradle plugins to create the project files for your IDE

./gradlew idea

Or

./gradlew eclipse

Once the IDE files have been created you can open the project files in your IDE.

Note: You can run the idea or eclipse tasks again if you change your project dependencies - in this way the IDE project files will be brought up-to-date.

You may have to tell your IDE to use Java source compatibility level of Java 7, as Gradle seems to default to Java 6 (!)

Changing the dependencies of your project

If your project needs a third party jar to build and you want to include it in the lib directory of your module you can add the dependency in the dependencies section of build.gradle with a type of compile.

If you don't want it to be included in the lib directory you should add it as provided.

Once you've changed your dependencies just run ./gradlew idea or ./gradlew eclipse again to update your IDE project files with the new dependencies.

Installing your module in Maven local

Use ./gradlew install to install your module in your local Maven repository.

Pushing your module to Maven

Use ./gradlew uploadArchives as normal to push your module to a Maven repository.

Registering your module in the Module Registry

If you've pushed your module to a public Maven or Bintray repository you can register it in the Module Registry so others can search for and discover it.

Next steps

Now you've got the project all set-up and running, it's time to explore the standard project layout itself.

摘自:http://vertx.io/vertx2/gradle_dev.html#developing-vertx-modules-with-gradle

Developing Vert.x Modules with Gradle的更多相关文章

  1. Developing Vert.x Modules using the Standard Project

    The module The tests Unit tests Integration tests Java integration tests JavaScript integration test ...

  2. Gradle Cheat Sheet

    加快编译速度 使用 gradle 2.4 及以上版本 ~/.gradle/gradle.properties 加入如下配置 org.gradle.daemon=true org.gradle.jvma ...

  3. Python:渗透测试开源项目

    Python:渗透测试开源项目[源码值得精读] sql注入工具:sqlmap DNS安全监测:DNSRecon 暴力破解测试工具:patator XSS漏洞利用工具:XSSer Web服务器压力测试工 ...

  4. Python:渗透测试开源项目【源码值得精读】

    sql注入工具:sqlmap DNS安全监测:DNSRecon 暴力破解测试工具:patator XSS漏洞利用工具:XSSer Web服务器压力测试工具:HULK SSL安全扫描器:SSLyze 网 ...

  5. 使用Maven命令行快速创建项目骨架(archetype)

      > mvn archetype:generate 接下来就会输出一些列带索引变化的archetype项可供我们选择,然后提示我们选择一个编号,可以直接回车选择默认的编号(392),然后就跟着 ...

  6. AndroidStudio遇到过的问题

    尊重原创 1.uses-sdk:minSdkVersion 1 cannot be smaller than version 4 declared in library [com.android.su ...

  7. 这里有123个黑客必备的Python工具!

    123个Python渗透测试工具,当然不仅于渗透~ 如果你想参与漏洞研究.逆向工程和渗透,我建议你时候用Python语言.Python已经有很多完善可用的库,我将在这里把他们列出来. 这个清单里的工具 ...

  8. odoo开发笔记 -- 借助模块queue_job实现异步方法调用

    场景描述: 对比了几个定时调度的框架,发现各有优缺点: celery 很强,异步定时调度,异步周期调度,也有延时调度的功能,但是延时调度的案例比较少,遂暂时不使用. queue_job,一个odoo第 ...

  9. Java SE 9 模块化示例

    Java SE 9 模块化示例 作者:Grey 原文地址:Java SE 9 模块化示例 说明 Java SE 9引入了模块系统,模块就是代码和数据的封装体.模块的代码被组织成多个包,每个包中包含Ja ...

随机推荐

  1. Linux下查找某一文件常用的方式

    当我们需要在ubuntu中找到之前的某一个文件,该用什么方式呢?用以下命令你就可以快速定位: find / -name "pycharm.sh" 用find查找这个命令,确定查找范 ...

  2. Notepad++ 64位 插件管理器 PluginManager 安装 更新

    32位的自带不多说,64位的内置不带,需要自己去找,这里给个地址: https://github.com/bruderstein/nppPluginManager/releases 地址里面有64位管 ...

  3. 托马斯微积分13版原版pdf

    泰国一大学的网站? 里边有好多书-- 悄悄的,不要外传-- http://www.maths.sci.ku.ac.th/suchai/417167/thomas.pdf

  4. python操作mysql数据-执行语句返回值直接返回字典类型

    fetchall()将结果放在二维数组里面,每一行的结果在元组里面 import pymysql def export(table_name): conn =pymysql.connect(host ...

  5. Convert List<Entity> to Json String.

    public static string ToJson(this object obj, string datetimeformats) {     var timeConverter = new I ...

  6. linux内核态和用户态的信号量

    在Linux的内核态和用户态都有信号量,使用也不同,简单记录一下. 1> 内核信号量,由内核控制路径使用.内核信号量是struct semaphore类型的对象,它在中定义struct sema ...

  7. 关于Java项目打包成Runnable jar文件后运行时图片不显示的问题

    现象:在eclipse中能够无误运行,但导出Runnable jar后运行jar包时不显示图片. 原因:路径问题. 方法1: 新建一个文件夹.文件夹中放那个jar包和image文件夹.在这种情况下,双 ...

  8. 普通Java Web项目为什么lib包要放在WEB-INF下

    首先一个项目要编译好之后才能部署到Tomcat中运行. Tomcat运行时如何找编译好的.class文件呢,其实Tomcat下的web项目有两个预置的classpath(就是能找到.class文件的入 ...

  9. __add__,关于运算符重载(用户权限)

    1.首先定义三种用户类型:普通用户.管理员.超级管理员,不同用户类型的用户权限关系如下: 先看一段代码: class Scope(): # 定义一个基类,因为每个权限类都需要add()方法 allow ...

  10. Java集合框架面试题目

    1.为什么Map接口不继承Collection 接口? Set是无序集合,并且不允许重复的元素 List是有序的集合,并且允许重复的元素 而Map是键值对 它被视为是键的set和值的set的组合 Ma ...