D
DrakesCraft Labs Maven

Dependencias Drake listas para todos los plugins.

Este repositorio publica los artefactos Maven compartidos del ecosistema Drake/Slimefun, para que los plugins separados de la organizacion compilen sin reactor local, sin jars instalados a mano y sin depender de la cache de un PC.

<repository>
  <id>drakescraft-labs-maven</id>
  <url>https://maven.drakescraft.cl/</url>
  <releases>
    <enabled>true</enabled>
  </releases>
  <snapshots>
    <enabled>true</enabled>
  </snapshots>
</repository>

Artefactos publicados

Base comun para Networks, addons portados y proximos plugins de DrakesCraft Labs.

slimefun-core 11.0-Drake-1.21.1-SNAPSHOT

Core Drake/Slimefun usado como API base por los addons.

Abrir carpeta
dough-core 1.3.1-DRAKE-v11-SNAPSHOT

Utilidades compartidas requeridas por plugins portados.

Abrir carpeta
sefilib-drake 0.3.1-DRAKE-SNAPSHOT

Libreria auxiliar usada por Networks y otros addons.

Abrir carpeta
InfinityExpansion-drake 1.20.6-Drake-SNAPSHOT

API/compatibilidad de InfinityExpansion para integraciones.

Abrir carpeta
NetworksV6-drake 11-SNAPSHOT

Jar compilado de NetworksV6 Drake como plugin independiente controlado.

Abrir carpeta
Networks-Experimental-drake 11-SNAPSHOT

Jar experimental compilado de Networks con características avanzadas.

Abrir carpeta

Flujo recomendado

  1. 1
    Publicar aqui cualquier dependencia interna que un plugin separado necesite.
  2. 2
    Agregar el bloque de repositorio Maven al `pom.xml` del plugin.
  3. 3
    Declarar la dependencia con `scope` correcto: normalmente `provided` para API de servidor y `compile` para librerias sombreadas.
  4. 4
    Validar con un repo Maven temporal limpio antes de pasarle el repo a otro dev.
$tempRepo = Join-Path $env:TEMP ('drake-m2-clean-' + [Guid]::NewGuid().ToString('N'))
New-Item -ItemType Directory -Path $tempRepo | Out-Null
mvn "-Dmaven.repo.local=$tempRepo" -U -DskipTests package

Tambien para Gradle

No necesitamos un segundo repositorio: Gradle consume este mismo Maven repo. Los plugins con `build.gradle` o `build.gradle.kts` deben apuntar a esta URL y declarar las dependencias Drake con `compileOnly` o `implementation` segun corresponda.

repositories {
    maven {
        name = "drakescraftLabs"
        url = uri("https://maven.drakescraft.cl/")
        mavenContent {
            includeGroup("com.github.drakescraft_labs")
        }
    }
}