Gradle Maven部署,转化
参考:(易百教程)http://www.yiibai.com/gradle/gradle_deployment.html
目录:
Gradle部署:
cmd>gradle build会将现有的项目打包到build->libs下。
Gradle Maven部署:
Gradle默认提供maven-publish
插件。 它用于发布gradle
脚本。
本地部署:
apply plugin: 'maven-publish' publishing {
publications {
mavenJava(MavenPublication) {
from components.java
}
} repositories {
maven {
url "D:/Repository/maven/"
}
}
}
私服部署:
apply plugin: 'maven-publish' publishing {
publications {
mavenJava(MavenPublication) {
from components.java
}
} repositories {
maven { credentials {
username 'admin'
password 'admin111'
}
// 发布maven存储库的url
url "http://192.168.1.91:8084/nexus/content/repositories/MavenTest"
}
}
}
cmd> gradle publish
Maven转化为Gradle:
gradle有个maven转化的命令
cmd> gradle init --type pom (注意:一定要是两个中划线)
转化前的pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.web.mt</groupId>
<artifactId>MavenWeb</artifactId>
<packaging>war</packaging>
<version>1.0.0</version>
<name>MavenWeb Maven Webapp</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<junit-version>3.8.1</junit-version>
<spring-version>5.0.0.RELEASE</spring-version>
<jstl-version>1.2</jstl-version>
<logback-version>1.2.3</logback-version>
</properties>
<repositories>
<repository>
<id>MavenTest</id>
<name>MavenTest Snap</name>
<snapshots>
<enabled>true</enabled>
</snapshots>
<url>http://127.0.0.1:8081/nexus/content/repositories/MavenTest/</url>
</repository>
</repositories>
<dependencies> <dependency>
<groupId>com.denny.mt</groupId>
<artifactId>MavenTest</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency> <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit-version}</version>
<scope>test</scope>
</dependency> <dependency>
<groupId>ojdbc</groupId>
<artifactId>ojdbc</artifactId>
<scope>system</scope>
<version>6</version>
<systemPath>${basedir}\src\lib\ojdbc-6.jar</systemPath>
</dependency> <dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring-version}</version>
<exclusions>
<exclusion>
<artifactId>spring-jcl</artifactId>
<groupId>org.apache.commons.logging</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring-version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${logback-version}</version>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>${jstl-version}</version>
</dependency>
</dependencies>
<build>
<finalName>MavenWeb</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<path>/MavenWeb</path>
</configuration>
</plugin>
<!-- Eclipse project -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.9</version>
<configuration>
<!-- Always download and attach dependencies source code -->
<downloadSources>true</downloadSources>
<downloadJavadocs>false</downloadJavadocs>
<!-- Avoid type mvn eclipse:eclipse -Dwtpversion=2.0 -->
<wtpversion>2.0</wtpversion>
</configuration>
</plugin> </plugins>
</build>
<distributionManagement>
<repository>
<id>MavenTestPub</id>
<url>http://192.168.1.91:8081/nexus/content/repositories/MavenTestPub</url>
</repository>
<snapshotRepository>
<id>MavenTest</id>
<url>http://192.168.1.91:8081/nexus/content/repositories/MavenTest</url>
</snapshotRepository>
</distributionManagement>
</project>
转化后的build.gradle
apply plugin: 'java'
apply plugin: 'maven' group = 'com.web.mt'
version = '1.0.0' description = """MavenWeb Maven Webapp""" sourceCompatibility = 1.8
targetCompatibility = 1.8
tasks.withType(JavaCompile) {
options.encoding = 'UTF-8'
} repositories { maven { url "http://127.0.0.1:8081/nexus/content/repositories/MavenTest/" }
maven { url "http://repo.maven.apache.org/maven2" }
}
dependencies {
compile group: 'com.denny.mt', name: 'MavenTest', version:'1.0-SNAPSHOT'
compile(group: 'org.springframework', name: 'spring-core', version:'5.0.0.RELEASE') {
exclude(module: 'spring-jcl')
}
compile group: 'org.springframework', name: 'spring-webmvc', version:'5.0.0.RELEASE'
compile group: 'org.springframework', name: 'spring-web', version:'5.0.0.RELEASE'
compile group: 'ch.qos.logback', name: 'logback-classic', version:'1.2.3'
compile group: 'jstl', name: 'jstl', version:'1.2'
testCompile group: 'junit', name: 'junit', version:'3.8.1'
system group: 'ojdbc', name: 'ojdbc', version:'6'
}
build.gradle
运行:
报错,本地配置的jar在转化后,不能被识别
system group: 'ojdbc', name: 'ojdbc', version:'6'
------------------------------------------------
Could not find method system() for arguments
修改为:
compile files('src/lib/ojdbc-6.jar')
本地其它平级项目嵌入:
settings.gradle文件:
includeFlat 'MavenTest'
build.gradle文件:
compile project(":MavenTest")
执行gradle build即可打成想要的jar包。
appPlugin 'java' --build会打成jar包
appPlugin 'war' --build会打成war包
appPlugin 'maven' --build会打成pom包
Gradle Maven部署,转化的更多相关文章
- maven部署tomcat项目,403错误解决
maven部署tomcat项目时403错误的解决方法 web模块的pom文件 pom.xml <plugin> <groupId>org.apache.tomcat.maven ...
- 使用 Maven 部署 artifact 到 Nexus 教程
本文侧重讲解如何将已经按照好的 Maven 和 Nexus 连接,即如何通过 Maven 部署 artifact 到 Nexus. 本文前提: 1. 安装好 Maven.可以使用 Maven 创建.打 ...
- maven部署命令
参考文档:http://blog.csdn.net/woshixuye/article/details/8133050 http://www.blogjava.net/itvincent/archiv ...
- 一些基本的操作,编译,构建,单元测试,安装,网站生成和基于Maven部署项目。
一些基本的操作,编译,构建,单元测试,安装,网站生成和基于Maven部署项目. 使用Maven构建项目“mvn package” 来构建项目 使用Maven清理项目“mvn clean” 来清理项目 ...
- Maven部署web应用到远程服务器
Maven部署web应用到远程服务器 找到了一个很详细的地址:http://www.mkyong.com/maven/how-to-deploy-maven-based-war-file-to-tom ...
- maven部署项目流程(区分环境)
java项目区分环境打包部署到Linux 本文以一个简单的HelloWorld的项目为例,从pom.xml配置到打jar包,最后在linux上运行并验证来对maven部署的这套流程进行简单介绍. 为方 ...
- 使用Maven部署构件至私服
--------------------siwuxie095 使用 Maven 部署构件至私服 1.部署构件到 Nexu ...
- gradle/maven/eclipse工程相互转化
原文: gradle/maven/eclipse工程相互转化 gradle/maven/eclipse工程相互转化:前提安装好相应的工具和插件.1.Maven->eclipse mvn ecl ...
- 如何将一个Maven项目转化成一个Eclipse项目
有时候我们需要将一个Maven项目导入到Eclipse中,直接作为一个普通的eclipse项目来导入是不行的,我们可以通过一个命令来实现:mvn eclipse:eclipse 1. 进入该Maven ...
随机推荐
- Linux下安装xampp和bugfree
1.BugFree简介 1.1 BugFree的来源 BugFree是借鉴微软的研发流程和Bug管理理念,使用PHP+MySQL独立写出的一个Bug管理系统.简单实用.免费并且开放源代码(遵循GNU ...
- JAVA中@SuppressWarnings注解的作用
eclipse中开发JAVA代码时,经常会出现编译告警符号,影响代码可读性,也影响调试的断点符号正常显示,可以使用@SuppressWarnings注解来抑制这些告警符号的再现.1.抑制单个类型的告警 ...
- 使用crypto-js的md5加密
官方地址:https://github.com/brix/crypto-js md5加密代码: let CryptoJS = require('crypto-js') let yxcsigns = C ...
- DOMContentLoaded 和 Load 事件 区别(待补充)
javascript会阻塞dom的解析.当解析过程中遇到<script>标签的时候,便会停止解析过程,转而去处理脚本,如果脚本是内联的,浏览器会先去执行这段内联的脚本,如果是外链的,那么先 ...
- git add -A、git add -u、git add .区别
git add各命令及缩写 git add各命令 缩写 git add --all git add -A git add --update git add -u git add . Git Versi ...
- react 知识点
1.react内联样式写法: <div style={{width:'200px',height:'100px',border:'1px solid red'}}> </div> ...
- WeakHashMap 理解
WeakHashMap 通过 expungeStaleEntries 这个函数的来实现:移除其内部不用的条目,从而达到自动释放内存的目的. 基本上只要对 WeakHashMap 的内容进行访问就会调用 ...
- CF 1013E Hills——隔项转移的DP
题目:http://codeforces.com/contest/1013/problem/E 设 dp[ i ][ j ][ 0/1 ] 表示前 i 个位置,有 j 个山峰,第 i 个位置不是/是山 ...
- POJ1006——中国剩余定理
题目:http://poj.org/problem?id=1006 中国剩余定理:x= m/mj + bj + aj 讲解:http://www.cnblogs.com/MashiroSky/p/59 ...
- C/C++动态分配连续空间,下标越界导致的free():invalid next size问题
昨天帮导师做的一个程序出了内存泄露的bug(在VS上程序运行一切正常,等return返回后才出错) 而且是程序运行结束后才出现的错误,在退出前一切代码都顺利执行完了,只是return之后出错. 之后我 ...