9 Commits

Author SHA1 Message Date
liach
fd92928700 Slurp mod version from json to avoid issues in IDE
See FabricMC/fabric-loader#457

Signed-off-by: liach <liach@users.noreply.github.com>
2021-06-24 11:00:17 -05:00
jackassmc
b662ed74bf Update Fabric versions link (#111) 2021-06-23 15:31:54 +01:00
Qwinci
28e2282fc9 Update gradle.properties (#110) 2021-06-23 15:31:42 +01:00
modmuss50
fda2a1cf1e 1.17 stable 2021-06-08 16:55:16 +01:00
modmuss50
b51afe9fc0 1.17-pre1 2021-05-27 22:13:12 +01:00
modmuss50
50f0be767c Update to 21w19a and Java 16
This commit can be used as an example on how to update your mod to Java 16. You will need to ensure you have Java 16 installed and set as the active version to run this.

Gradle 7 is required along with loom 0.8
2021-05-12 20:41:38 +01:00
David Bailey
29c522536f Update dependencies (#92)
Co-authored-by: ByMartrixX <47987888+ByMartrixx@users.noreply.github.com>
2021-03-27 20:04:16 +00:00
Geolykt
bdfab7a0cf Unify inconsitent identation in build.gradle (#90) 2021-03-15 19:14:43 +00:00
modmuss50
4cccd73df9 Update loom, gradle, yarn, loader and api. 2021-02-26 22:04:17 +00:00
7 changed files with 132 additions and 145 deletions

View File

@@ -12,9 +12,7 @@ jobs:
matrix:
# Use these Java versions
java: [
1.8, # Minimum supported by Minecraft
11, # Current Java LTS
15 # Latest version
16 # Minimum supported by Minecraft
]
# and run on both Linux and Windows
os: [ubuntu-20.04, windows-latest]
@@ -34,7 +32,7 @@ jobs:
- name: build
run: ./gradlew build
- name: capture build artifacts
if: ${{ runner.os == 'Linux' && matrix.java == '11' }} # Only upload artifacts built from LTS java on one OS
if: ${{ runner.os == 'Linux' && matrix.java == '16' }} # Only upload artifacts built from latest java on one OS
uses: actions/upload-artifact@v2
with:
name: Artifacts

View File

@@ -1,22 +1,31 @@
plugins {
id 'fabric-loom' version '0.5-SNAPSHOT'
id 'fabric-loom' version '0.8-SNAPSHOT'
id 'maven-publish'
}
sourceCompatibility = JavaVersion.VERSION_16
targetCompatibility = JavaVersion.VERSION_16
archivesBaseName = project.archives_base_name
version = project.mod_version
group = project.maven_group
// This field defines the Java version your mod target.
// The Minecraft launcher currently installs Java 8 for users, so your mod probably wants to target Java 8 too.
def targetJavaVersion = 8
// Obtains mod version. change file reference if your fabric.mod.json is located elsewhere
import groovy.json.JsonSlurper
version = new JsonSlurper().parse(file('src/main/resources/fabric.mod.json')).version
// You can use logger.lifecycle to print out messages like System.out; double-quote strings convert
// ${statement} templates to statement values, such as method calls, while single-quote strings don't.
// getXxx() calls can be simplified to xxx, like project.getGradle().getGradleVersion() is project.gradle.gradleVersion.
// Since the buildscript is provided with a project, you can call project methods without qualification if there is no
// ambiguity, such as file() call to retrieve version is project.file(), and gradle is project.getGradle()
logger.lifecycle "Setting up ${archivesBaseName} ${version} with Gradle ${gradle.gradleVersion}"
repositories {
// Add repositories to retrieve artifacts from in here.
// You should only use this when depending on other mods because
// Loom adds the essential maven repositories to download Minecraft and libraries from automatically.
// See https://docs.gradle.org/current/userguide/declaring_repositories.html
// for more information about repositories.
// Add repositories to retrieve artifacts from in here.
// You should only use this when depending on other mods because
// Loom adds the essential maven repositories to download Minecraft and libraries from automatically.
// See https://docs.gradle.org/current/userguide/declaring_repositories.html
// for more information about repositories.
}
dependencies {
@@ -27,20 +36,6 @@ dependencies {
// Fabric API. This is technically optional, but you probably want it anyway.
modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}"
// You can also use individual Fabric API modules with
// `modImplementation fabricApi.module('module-name', project.fabric_version)`
// If you do this, you will need to depend individually on each modules in the fabric.mod.json file.
// PSA: Some older mods, compiled on Loom 0.2.1, might have outdated Maven POMs.
// You may need to force-disable transitiveness on them.
}
processResources {
inputs.property "version", project.version
filesMatching("fabric.mod.json") {
expand "version": project.version
}
}
tasks.withType(JavaCompile).configureEach {
@@ -50,17 +45,11 @@ tasks.withType(JavaCompile).configureEach {
// If Javadoc is generated, this must be specified in that task too.
it.options.encoding = "UTF-8"
// JDK 9 introduced a new way of specifying this that will make sure no newer classes or methods are used.
// We'll use that if it's available, but otherwise we'll use the older option.
if (JavaVersion.current().isJava9Compatible()) {
it.options.release = targetJavaVersion
}
// Minecraft 1.17 (21w19a) upwards uses Java 16.
it.options.release = 16
}
java {
sourceCompatibility = JavaVersion.toVersion(targetJavaVersion)
targetCompatibility = JavaVersion.toVersion(targetJavaVersion)
// Loom will automatically attach sourcesJar to a RemapSourcesJar task and to the "build" task
// if it is present.
// If you remove this line, sources will not be generated.
@@ -87,11 +76,11 @@ publishing {
}
}
// See https://docs.gradle.org/current/userguide/publishing_maven.html for information on how to set up publishing.
repositories {
// Add repositories to publish to here.
// Notice: This block does NOT have the same function as the block in the top level.
// The repositories here will be used for publishing your artifact, not for
// retrieving dependencies.
}
// See https://docs.gradle.org/current/userguide/publishing_maven.html for information on how to set up publishing.
repositories {
// Add repositories to publish to here.
// Notice: This block does NOT have the same function as the block in the top level.
// The repositories here will be used for publishing your artifact, not for
// retrieving dependencies.
}
}

View File

@@ -2,16 +2,15 @@
org.gradle.jvmargs=-Xmx1G
# Fabric Properties
# check these on https://fabricmc.net/use
minecraft_version=1.16.5
yarn_mappings=1.16.5+build.1
loader_version=0.11.0
# check these on https://fabricmc.net/versions.html
minecraft_version=1.17
yarn_mappings=1.17+build.13
loader_version=0.11.6
# Mod Properties
mod_version = 1.0.0
# edit your mod version in fabric.mod.json
maven_group = com.example
archives_base_name = fabric-example-mod
# Dependencies
# currently not on the main fabric site, check on the maven: https://maven.fabricmc.net/net/fabricmc/fabric-api/fabric-api
fabric_version=0.29.3+1.16
fabric_version=0.36.0+1.17

View File

@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.2-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

View File

@@ -1,7 +1,7 @@
{
"schemaVersion": 1,
"id": "modid",
"version": "${version}",
"version": "1.0.0",
"name": "Example Mod",
"description": "This is an example description! Tell everyone what your mod is about!",
@@ -27,9 +27,10 @@
],
"depends": {
"fabricloader": ">=0.7.4",
"fabricloader": ">=0.11.3",
"fabric": "*",
"minecraft": "1.16.x"
"minecraft": "1.17.x",
"java": ">=16"
},
"suggests": {
"another-mod": "*"

View File

@@ -2,7 +2,7 @@
"required": true,
"minVersion": "0.8",
"package": "net.fabricmc.example.mixin",
"compatibilityLevel": "JAVA_8",
"compatibilityLevel": "JAVA_16",
"mixins": [
],
"client": [