Updated formatting outlined by attributes
This commit is contained in:
parent
33a406311f
commit
717c3f5fcc
392
build.gradle
392
build.gradle
|
|
@ -1,196 +1,196 @@
|
|||
// This sets us up for building a forge project - you need all of these
|
||||
buildscript {
|
||||
repositories {
|
||||
mavenCentral()
|
||||
maven {
|
||||
name = "forge"
|
||||
url = "http://files.minecraftforge.net/maven"
|
||||
}
|
||||
maven {
|
||||
name = "sonatype"
|
||||
url = "https://oss.sonatype.org/content/repositories/snapshots/"
|
||||
}
|
||||
}
|
||||
dependencies {
|
||||
classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
|
||||
}
|
||||
}
|
||||
|
||||
// Apply the forge plugin - this adds all the magic for automatically obfuscating, deobfuscating etc
|
||||
apply plugin: 'forge'
|
||||
|
||||
// This is a simple flatdir repository for "uploadArchives" when you don't have a remote repo to target
|
||||
repositories {
|
||||
flatDir {
|
||||
name "fileRepo"
|
||||
dirs "repo"
|
||||
}
|
||||
}
|
||||
// IronChest uses git tagging to mark major versions. This sets up the project version to that version data
|
||||
def versionInfo = getGitVersion()
|
||||
version = "${versionInfo['IronChest.version']}"
|
||||
|
||||
// This is our group. I'm cpw.mods
|
||||
group= "cpw.mods" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
|
||||
// This is our actual project within the group. Note: FML has "fml" here. But this is ironchest.
|
||||
archivesBaseName = "ironchest"
|
||||
|
||||
// Setup the forge minecraft plugin data. Specify the preferred forge/minecraft version here
|
||||
minecraft {
|
||||
version = "1.7.10-10.13.0.1150"
|
||||
}
|
||||
|
||||
// This wrangles the resources for the jar files- stuff like textures and languages
|
||||
processResources
|
||||
{
|
||||
// we're omitting the .xcf files - they're development only
|
||||
exclude '**/*.xcf'
|
||||
// we only want to do search/replace stuff in mcmod.info, nothing else
|
||||
from(sourceSets.main.resources.srcDirs) {
|
||||
include 'mcmod.info'
|
||||
|
||||
// replace version and mcversion
|
||||
expand 'version':project.version, 'mcversion':project.minecraft.version
|
||||
}
|
||||
|
||||
// copy everything else, thats not the mcmod.info
|
||||
from(sourceSets.main.resources.srcDirs) {
|
||||
exclude 'mcmod.info'
|
||||
}
|
||||
|
||||
// generate version.properties file from the git version data earlier
|
||||
doLast {
|
||||
def propsFile = new File(destinationDir, 'version.properties')
|
||||
def properties = new Properties()
|
||||
properties.putAll(versionInfo)
|
||||
properties['IronChest.build.mcversion'] = project.minecraft.version
|
||||
properties.store(propsFile.newWriter(), null)
|
||||
}
|
||||
}
|
||||
|
||||
// this sets our output jar to have a 'tag' of 'universal' on it
|
||||
// It also adds the minecraft version in a custom version name
|
||||
// The result is files named <projectname>-<mcversion>-<version>-universal.jar
|
||||
jar {
|
||||
classifier = 'universal'
|
||||
version = "${project.minecraft.version}-${project.version}"
|
||||
|
||||
}
|
||||
|
||||
println "FISHBUM ${jar.version}"
|
||||
|
||||
// Add in a source jar for people, should they desire to download such a thing
|
||||
task sourceJar(type: Jar) {
|
||||
from sourceSets.main.allSource
|
||||
classifier = 'src'
|
||||
version = "${project.minecraft.version}-${project.version}"
|
||||
}
|
||||
|
||||
// Add in an mcp named jar, for those who wish to run in a development environment (assuming mcp naming matches)
|
||||
task deobfJar(type: Jar) {
|
||||
from sourceSets.main.output
|
||||
classifier = 'deobf'
|
||||
version = "${project.minecraft.version}-${project.version}"
|
||||
}
|
||||
|
||||
// Tell the artifact system about our extra jars
|
||||
artifacts {
|
||||
archives sourceJar, deobfJar
|
||||
}
|
||||
|
||||
// Configure an upload task. this is setup for uploading to files.minecraftforge.net. There are other examples around
|
||||
uploadArchives {
|
||||
dependsOn 'reobf'
|
||||
repositories {
|
||||
if (project.hasProperty("filesmaven")) {
|
||||
logger.info('Publishing to files server')
|
||||
|
||||
mavenDeployer {
|
||||
configuration = configurations.deployJars
|
||||
|
||||
repository(url: project.filesmaven.url) {
|
||||
authentication(userName: project.filesmaven.username, privateKey: project.filesmaven.key)
|
||||
}
|
||||
|
||||
// This is just the pom data for the maven repo
|
||||
pom {
|
||||
groupId = project.group
|
||||
// Force the maven upload to use the <mcversion>-<version> syntax preferred at files
|
||||
version = "${project.minecraft.version}-${project.version}"
|
||||
artifactId = project.archivesBaseName
|
||||
project {
|
||||
name project.archivesBaseName
|
||||
packaging 'jar'
|
||||
description 'IronChest'
|
||||
url 'https://github.com/cpw/IronChest'
|
||||
|
||||
scm {
|
||||
url 'https://github.com/progwml6/IronChest'
|
||||
connection 'scm:git:git://github.com/progwml6/IronChest.git'
|
||||
developerConnection 'scm:git:git@github.com:progwml6/IronChest.git'
|
||||
}
|
||||
|
||||
issueManagement {
|
||||
system 'github'
|
||||
url 'https://github.com/progwml6/IronChest/issues'
|
||||
}
|
||||
|
||||
licenses {
|
||||
license {
|
||||
name 'GNU Public License (GPL), Version 3.0'
|
||||
url 'http://www.gnu.org/licenses/gpl-3.0.txt'
|
||||
distribution 'repo'
|
||||
}
|
||||
}
|
||||
|
||||
developers {
|
||||
developer {
|
||||
id 'cpw'
|
||||
name 'cpw'
|
||||
roles { role 'developer' }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
logger.info('Publishing to repo folder')
|
||||
|
||||
mavenDeployer {
|
||||
pom.version = "${project.minecraft.version}-${project.version}"
|
||||
repository(url: 'file://localhost/' + project.file('repo').getAbsolutePath())
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// This is a special task for pulling the version information from git and the environment (for BUILD_NUMBER)
|
||||
def getGitVersion()
|
||||
{
|
||||
def out = [:]
|
||||
|
||||
// call git command.
|
||||
def outStream = new ByteArrayOutputStream()
|
||||
def result = exec {
|
||||
executable = 'git'
|
||||
args = [ 'describe', '--long', "--match=[^(jenkins)]*"]
|
||||
standardOutput = outStream
|
||||
}
|
||||
|
||||
def fullVersion = outStream.toString().trim()
|
||||
def matcher = fullVersion =~ /(\d+).(\d+)-(\d+)-(.*)/
|
||||
|
||||
def maj = matcher[0][1]
|
||||
def min = matcher[0][2]
|
||||
def rev = matcher[0][3]
|
||||
def bn = System.getenv("BUILD_NUMBER") ?: "1"
|
||||
|
||||
out['IronChest.build.major.number'] = maj.toString()
|
||||
out['IronChest.build.minor.number'] = min.toString()
|
||||
out['IronChest.build.revision.number'] = rev.toString()
|
||||
out['IronChest.build.githash'] = matcher[0][4].toString()
|
||||
out['IronChest.build.number' ] = bn.toString()
|
||||
out['IronChest.version' ] = "${maj}.${min}.${rev}.${bn}".toString()
|
||||
|
||||
return out
|
||||
}
|
||||
// This sets us up for building a forge project - you need all of these
|
||||
buildscript {
|
||||
repositories {
|
||||
mavenCentral()
|
||||
maven {
|
||||
name = "forge"
|
||||
url = "http://files.minecraftforge.net/maven"
|
||||
}
|
||||
maven {
|
||||
name = "sonatype"
|
||||
url = "https://oss.sonatype.org/content/repositories/snapshots/"
|
||||
}
|
||||
}
|
||||
dependencies {
|
||||
classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
|
||||
}
|
||||
}
|
||||
|
||||
// Apply the forge plugin - this adds all the magic for automatically obfuscating, deobfuscating etc
|
||||
apply plugin: 'forge'
|
||||
|
||||
// This is a simple flatdir repository for "uploadArchives" when you don't have a remote repo to target
|
||||
repositories {
|
||||
flatDir {
|
||||
name "fileRepo"
|
||||
dirs "repo"
|
||||
}
|
||||
}
|
||||
// IronChest uses git tagging to mark major versions. This sets up the project version to that version data
|
||||
def versionInfo = getGitVersion()
|
||||
version = "${versionInfo['IronChest.version']}"
|
||||
|
||||
// This is our group. I'm cpw.mods
|
||||
group= "cpw.mods" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
|
||||
// This is our actual project within the group. Note: FML has "fml" here. But this is ironchest.
|
||||
archivesBaseName = "ironchest"
|
||||
|
||||
// Setup the forge minecraft plugin data. Specify the preferred forge/minecraft version here
|
||||
minecraft {
|
||||
version = "1.7.10-10.13.0.1150"
|
||||
}
|
||||
|
||||
// This wrangles the resources for the jar files- stuff like textures and languages
|
||||
processResources
|
||||
{
|
||||
// we're omitting the .xcf files - they're development only
|
||||
exclude '**/*.xcf'
|
||||
// we only want to do search/replace stuff in mcmod.info, nothing else
|
||||
from(sourceSets.main.resources.srcDirs) {
|
||||
include 'mcmod.info'
|
||||
|
||||
// replace version and mcversion
|
||||
expand 'version':project.version, 'mcversion':project.minecraft.version
|
||||
}
|
||||
|
||||
// copy everything else, thats not the mcmod.info
|
||||
from(sourceSets.main.resources.srcDirs) {
|
||||
exclude 'mcmod.info'
|
||||
}
|
||||
|
||||
// generate version.properties file from the git version data earlier
|
||||
doLast {
|
||||
def propsFile = new File(destinationDir, 'version.properties')
|
||||
def properties = new Properties()
|
||||
properties.putAll(versionInfo)
|
||||
properties['IronChest.build.mcversion'] = project.minecraft.version
|
||||
properties.store(propsFile.newWriter(), null)
|
||||
}
|
||||
}
|
||||
|
||||
// this sets our output jar to have a 'tag' of 'universal' on it
|
||||
// It also adds the minecraft version in a custom version name
|
||||
// The result is files named <projectname>-<mcversion>-<version>-universal.jar
|
||||
jar {
|
||||
classifier = 'universal'
|
||||
version = "${project.minecraft.version}-${project.version}"
|
||||
|
||||
}
|
||||
|
||||
println "FISHBUM ${jar.version}"
|
||||
|
||||
// Add in a source jar for people, should they desire to download such a thing
|
||||
task sourceJar(type: Jar) {
|
||||
from sourceSets.main.allSource
|
||||
classifier = 'src'
|
||||
version = "${project.minecraft.version}-${project.version}"
|
||||
}
|
||||
|
||||
// Add in an mcp named jar, for those who wish to run in a development environment (assuming mcp naming matches)
|
||||
task deobfJar(type: Jar) {
|
||||
from sourceSets.main.output
|
||||
classifier = 'deobf'
|
||||
version = "${project.minecraft.version}-${project.version}"
|
||||
}
|
||||
|
||||
// Tell the artifact system about our extra jars
|
||||
artifacts {
|
||||
archives sourceJar, deobfJar
|
||||
}
|
||||
|
||||
// Configure an upload task. this is setup for uploading to files.minecraftforge.net. There are other examples around
|
||||
uploadArchives {
|
||||
dependsOn 'reobf'
|
||||
repositories {
|
||||
if (project.hasProperty("filesmaven")) {
|
||||
logger.info('Publishing to files server')
|
||||
|
||||
mavenDeployer {
|
||||
configuration = configurations.deployJars
|
||||
|
||||
repository(url: project.filesmaven.url) {
|
||||
authentication(userName: project.filesmaven.username, privateKey: project.filesmaven.key)
|
||||
}
|
||||
|
||||
// This is just the pom data for the maven repo
|
||||
pom {
|
||||
groupId = project.group
|
||||
// Force the maven upload to use the <mcversion>-<version> syntax preferred at files
|
||||
version = "${project.minecraft.version}-${project.version}"
|
||||
artifactId = project.archivesBaseName
|
||||
project {
|
||||
name project.archivesBaseName
|
||||
packaging 'jar'
|
||||
description 'IronChest'
|
||||
url 'https://github.com/cpw/IronChest'
|
||||
|
||||
scm {
|
||||
url 'https://github.com/progwml6/IronChest'
|
||||
connection 'scm:git:git://github.com/progwml6/IronChest.git'
|
||||
developerConnection 'scm:git:git@github.com:progwml6/IronChest.git'
|
||||
}
|
||||
|
||||
issueManagement {
|
||||
system 'github'
|
||||
url 'https://github.com/progwml6/IronChest/issues'
|
||||
}
|
||||
|
||||
licenses {
|
||||
license {
|
||||
name 'GNU Public License (GPL), Version 3.0'
|
||||
url 'http://www.gnu.org/licenses/gpl-3.0.txt'
|
||||
distribution 'repo'
|
||||
}
|
||||
}
|
||||
|
||||
developers {
|
||||
developer {
|
||||
id 'cpw'
|
||||
name 'cpw'
|
||||
roles { role 'developer' }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
logger.info('Publishing to repo folder')
|
||||
|
||||
mavenDeployer {
|
||||
pom.version = "${project.minecraft.version}-${project.version}"
|
||||
repository(url: 'file://localhost/' + project.file('repo').getAbsolutePath())
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// This is a special task for pulling the version information from git and the environment (for BUILD_NUMBER)
|
||||
def getGitVersion()
|
||||
{
|
||||
def out = [:]
|
||||
|
||||
// call git command.
|
||||
def outStream = new ByteArrayOutputStream()
|
||||
def result = exec {
|
||||
executable = 'git'
|
||||
args = [ 'describe', '--long', "--match=[^(jenkins)]*"]
|
||||
standardOutput = outStream
|
||||
}
|
||||
|
||||
def fullVersion = outStream.toString().trim()
|
||||
def matcher = fullVersion =~ /(\d+).(\d+)-(\d+)-(.*)/
|
||||
|
||||
def maj = matcher[0][1]
|
||||
def min = matcher[0][2]
|
||||
def rev = matcher[0][3]
|
||||
def bn = System.getenv("BUILD_NUMBER") ?: "1"
|
||||
|
||||
out['IronChest.build.major.number'] = maj.toString()
|
||||
out['IronChest.build.minor.number'] = min.toString()
|
||||
out['IronChest.build.revision.number'] = rev.toString()
|
||||
out['IronChest.build.githash'] = matcher[0][4].toString()
|
||||
out['IronChest.build.number' ] = bn.toString()
|
||||
out['IronChest.version' ] = "${maj}.${min}.${rev}.${bn}".toString()
|
||||
|
||||
return out
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,90 +1,90 @@
|
|||
@if "%DEBUG%" == "" @echo off
|
||||
@rem ##########################################################################
|
||||
@rem
|
||||
@rem Gradle startup script for Windows
|
||||
@rem
|
||||
@rem ##########################################################################
|
||||
|
||||
@rem Set local scope for the variables with windows NT shell
|
||||
if "%OS%"=="Windows_NT" setlocal
|
||||
|
||||
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
set DEFAULT_JVM_OPTS=
|
||||
|
||||
set DIRNAME=%~dp0
|
||||
if "%DIRNAME%" == "" set DIRNAME=.
|
||||
set APP_BASE_NAME=%~n0
|
||||
set APP_HOME=%DIRNAME%
|
||||
|
||||
@rem Find java.exe
|
||||
if defined JAVA_HOME goto findJavaFromJavaHome
|
||||
|
||||
set JAVA_EXE=java.exe
|
||||
%JAVA_EXE% -version >NUL 2>&1
|
||||
if "%ERRORLEVEL%" == "0" goto init
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
|
||||
goto fail
|
||||
|
||||
:findJavaFromJavaHome
|
||||
set JAVA_HOME=%JAVA_HOME:"=%
|
||||
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
|
||||
|
||||
if exist "%JAVA_EXE%" goto init
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
|
||||
goto fail
|
||||
|
||||
:init
|
||||
@rem Get command-line arguments, handling Windowz variants
|
||||
|
||||
if not "%OS%" == "Windows_NT" goto win9xME_args
|
||||
if "%@eval[2+2]" == "4" goto 4NT_args
|
||||
|
||||
:win9xME_args
|
||||
@rem Slurp the command line arguments.
|
||||
set CMD_LINE_ARGS=
|
||||
set _SKIP=2
|
||||
|
||||
:win9xME_args_slurp
|
||||
if "x%~1" == "x" goto execute
|
||||
|
||||
set CMD_LINE_ARGS=%*
|
||||
goto execute
|
||||
|
||||
:4NT_args
|
||||
@rem Get arguments from the 4NT Shell from JP Software
|
||||
set CMD_LINE_ARGS=%$
|
||||
|
||||
:execute
|
||||
@rem Setup the command line
|
||||
|
||||
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
|
||||
|
||||
@rem Execute Gradle
|
||||
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
|
||||
|
||||
:end
|
||||
@rem End local scope for the variables with windows NT shell
|
||||
if "%ERRORLEVEL%"=="0" goto mainEnd
|
||||
|
||||
:fail
|
||||
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
|
||||
rem the _cmd.exe /c_ return code!
|
||||
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
|
||||
exit /b 1
|
||||
|
||||
:mainEnd
|
||||
if "%OS%"=="Windows_NT" endlocal
|
||||
|
||||
:omega
|
||||
@if "%DEBUG%" == "" @echo off
|
||||
@rem ##########################################################################
|
||||
@rem
|
||||
@rem Gradle startup script for Windows
|
||||
@rem
|
||||
@rem ##########################################################################
|
||||
|
||||
@rem Set local scope for the variables with windows NT shell
|
||||
if "%OS%"=="Windows_NT" setlocal
|
||||
|
||||
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
set DEFAULT_JVM_OPTS=
|
||||
|
||||
set DIRNAME=%~dp0
|
||||
if "%DIRNAME%" == "" set DIRNAME=.
|
||||
set APP_BASE_NAME=%~n0
|
||||
set APP_HOME=%DIRNAME%
|
||||
|
||||
@rem Find java.exe
|
||||
if defined JAVA_HOME goto findJavaFromJavaHome
|
||||
|
||||
set JAVA_EXE=java.exe
|
||||
%JAVA_EXE% -version >NUL 2>&1
|
||||
if "%ERRORLEVEL%" == "0" goto init
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
|
||||
goto fail
|
||||
|
||||
:findJavaFromJavaHome
|
||||
set JAVA_HOME=%JAVA_HOME:"=%
|
||||
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
|
||||
|
||||
if exist "%JAVA_EXE%" goto init
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
|
||||
goto fail
|
||||
|
||||
:init
|
||||
@rem Get command-line arguments, handling Windowz variants
|
||||
|
||||
if not "%OS%" == "Windows_NT" goto win9xME_args
|
||||
if "%@eval[2+2]" == "4" goto 4NT_args
|
||||
|
||||
:win9xME_args
|
||||
@rem Slurp the command line arguments.
|
||||
set CMD_LINE_ARGS=
|
||||
set _SKIP=2
|
||||
|
||||
:win9xME_args_slurp
|
||||
if "x%~1" == "x" goto execute
|
||||
|
||||
set CMD_LINE_ARGS=%*
|
||||
goto execute
|
||||
|
||||
:4NT_args
|
||||
@rem Get arguments from the 4NT Shell from JP Software
|
||||
set CMD_LINE_ARGS=%$
|
||||
|
||||
:execute
|
||||
@rem Setup the command line
|
||||
|
||||
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
|
||||
|
||||
@rem Execute Gradle
|
||||
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
|
||||
|
||||
:end
|
||||
@rem End local scope for the variables with windows NT shell
|
||||
if "%ERRORLEVEL%"=="0" goto mainEnd
|
||||
|
||||
:fail
|
||||
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
|
||||
rem the _cmd.exe /c_ return code!
|
||||
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
|
||||
exit /b 1
|
||||
|
||||
:mainEnd
|
||||
if "%OS%"=="Windows_NT" endlocal
|
||||
|
||||
:omega
|
||||
|
|
|
|||
Loading…
Reference in New Issue