diff --git a/.github/workflows/create-release.yml b/.github/workflows/create-release.yml index da07fcb..7bba1ff 100644 --- a/.github/workflows/create-release.yml +++ b/.github/workflows/create-release.yml @@ -5,31 +5,28 @@ jobs: build-and-release: name: Build and Release runs-on: ubuntu-latest + env: + JAVA_TOOL_OPTIONS: -Djavax.net.ssl.trustStoreType=JKS -Djavax.net.ssl.trustStore=/etc/ssl/certs/java/cacerts -Djavax.net.ssl.trustStorePassword=changeit steps: - - name: Cache local Maven repository - uses: actions/cache@v4 - with: - path: ~/.m2/repository - key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} - restore-keys: | - ${{ runner.os }}-maven- - uses: actions/checkout@v5 - name: Set up JDK 21 uses: actions/setup-java@v5 with: java-version: '21' distribution: 'zulu' - - name: Set up Maven - uses: stCarolas/setup-maven@v5 + - name: Set up Gradle + uses: gradle/actions/setup-gradle@v4 with: - maven-version: 3.9.6 - - name: Compile - run: mvn -B package --file pom.xml + gradle-version: '9.4.1' + - name: Build + run: gradle build --no-daemon env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Get Version Number from Pom + - name: Get Version Number from Gradle id: get_version - run: echo "VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)" >> $GITHUB_ENV + run: | + VERSION=$(gradle properties -q | awk -F': ' '/^version:/ {print $2; exit}') + echo "VERSION=$VERSION" >> "$GITHUB_ENV" - name: Extract latest CHANGELOG entry id: changelog run: | @@ -37,7 +34,7 @@ jobs: CHANGELOG_ESCAPED=$(echo "$CHANGELOG_CONTENT" | sed ':a;N;$!ba;s/\n/%0A/g') echo "Extracted latest release notes from CHANGELOG.md:" echo -e "$CHANGELOG_CONTENT" - echo "::set-output name=content::$CHANGELOG_ESCAPED" + echo "content=$CHANGELOG_ESCAPED" >> "$GITHUB_OUTPUT" - name: Create Release uses: actions/create-release@v1 id: create_release @@ -54,6 +51,6 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: ./Universal/target/AntiVPN-${{ env.VERSION }}-universal.jar + asset_path: ./build/libs/AntiVPN-${{ env.VERSION }}-universal.jar asset_name: AntiVPN-v${{ env.VERSION }}.jar asset_content_type: application/java-archive diff --git a/.github/workflows/maven.yml b/.github/workflows/gradle.yml similarity index 56% rename from .github/workflows/maven.yml rename to .github/workflows/gradle.yml index 550b098..32caac1 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/gradle.yml @@ -9,36 +9,31 @@ jobs: build: name: Build and Test runs-on: ubuntu-latest + env: + JAVA_TOOL_OPTIONS: -Djavax.net.ssl.trustStoreType=JKS -Djavax.net.ssl.trustStore=/etc/ssl/certs/java/cacerts -Djavax.net.ssl.trustStorePassword=changeit steps: - - name: Cache local Maven repository - uses: actions/cache@v4 - with: - path: ~/.m2/repository - key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} - restore-keys: | - ${{ runner.os }}-maven- - uses: actions/checkout@v5 - name: Set up JDK 21 uses: actions/setup-java@v5 with: java-version: '21' distribution: 'zulu' - - name: Set up Maven - uses: stCarolas/setup-maven@v5 + - name: Set up Gradle + uses: gradle/actions/setup-gradle@v4 with: - maven-version: 3.9.6 - - name: Compile - run: mvn -B package --file pom.xml + gradle-version: '9.4.1' + - name: Build + run: gradle build --no-daemon env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Upload AntiVPN uses: actions/upload-artifact@v4 with: name: AntiVPN-Universal - path: Universal/target/AntiVPN-*.jar + path: build/libs/AntiVPN-*-universal.jar - name: Upload Sponge plugin uses: actions/upload-artifact@v4 with: name: AntiVPN-Sponge - path: Sponge/target/Sponge-*.jar + path: Sponge/SpongeLoader/build/libs/*.jar diff --git a/.github/workflows/test-gradle.yml b/.github/workflows/test-gradle.yml new file mode 100644 index 0000000..5d0a605 --- /dev/null +++ b/.github/workflows/test-gradle.yml @@ -0,0 +1,24 @@ +on: + push: + +jobs: + build: + runs-on: ubuntu-latest + env: + JAVA_TOOL_OPTIONS: -Djavax.net.ssl.trustStoreType=JKS -Djavax.net.ssl.trustStore=/etc/ssl/certs/java/cacerts -Djavax.net.ssl.trustStorePassword=changeit + + steps: + - uses: actions/checkout@v5 + - name: Set up JDK 21 + uses: actions/setup-java@v5 + with: + java-version: '21' + distribution: 'zulu' + - name: Set up Gradle + uses: gradle/actions/setup-gradle@v4 + with: + gradle-version: '9.4.1' + - name: Build + run: gradle build --no-daemon + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml deleted file mode 100644 index a7de87b..0000000 --- a/.github/workflows/test.yml +++ /dev/null @@ -1,19 +0,0 @@ -on: - push: - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v4 - - name: Set up JDK 21 - uses: actions/setup-java@v4 - with: - java-version: 21.0 - distribution: 'zulu' - cache: 'maven' - - name: Compile - run: mvn -B package --file pom.xml - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.gitignore b/.gitignore index 05856b0..f870476 100644 --- a/.gitignore +++ b/.gitignore @@ -188,6 +188,7 @@ fabric.properties # Package Files # *.jar +!gradle/wrapper/gradle-wrapper.jar *.war *.nar *.ear @@ -293,3 +294,4 @@ $RECYCLE.BIN/ *.lnk # End of https://www.toptal.com/developers/gitignore/api/windows,macos,linux,maven,java,intellij,eclipse,netbeans +/.gradle/ diff --git a/Bukkit/Loader/build.gradle b/Bukkit/Loader/build.gradle new file mode 100644 index 0000000..bfef48f --- /dev/null +++ b/Bukkit/Loader/build.gradle @@ -0,0 +1,27 @@ +plugins { + id 'com.gradleup.shadow' +} + +evaluationDependsOn(':Bukkit:Plugin') + +dependencies { + compileOnly 'org.spigotmc:spigot-api:1.20.2-R0.1-SNAPSHOT' + compileOnly project(':Bukkit:Plugin') + implementation project(':Common:loader-utils') +} + +shadowJar { + archiveClassifier.set('') + + // Include the shaded plugin jar as a single resource file + from(project(':Bukkit:Plugin').tasks.shadowJar) { + rename { 'antivpn-bukkit.jarinjar' } + } +} + +// Ensure the plugin is built before packaging the loader +tasks.named('shadowJar') { + dependsOn(':Bukkit:Plugin:shadowJar') +} + +tasks.build.dependsOn shadowJar diff --git a/Bukkit/Loader/pom.xml b/Bukkit/Loader/pom.xml deleted file mode 100644 index c697135..0000000 --- a/Bukkit/Loader/pom.xml +++ /dev/null @@ -1,107 +0,0 @@ - - - - - 4.0.0 - - dev.brighten.antivpn - Bukkit - 1.10.0 - - dev.brighten.antivpn.bukkit - Loader - - - 17 - 17 - UTF-8 - - - - - spigot-repo - https://hub.spigotmc.org/nexus/content/repositories/snapshots/ - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.13.0 - - 17 - 17 - -XDignore.symbol.file - - - - org.apache.maven.plugins - maven-shade-plugin - 3.6.0 - - - package - - shade - - - false - - - antivpn-bukkit.jarinjar - ${project.parent.basedir}/Plugin/target/Plugin-${project.version}.jar - - - - - - - - - - src/main/resources - true - - - - - - - org.spigotmc - spigot-api - 1.20.2-R0.1-SNAPSHOT - provided - - - dev.brighten.antivpn - Plugin - ${project.version} - provided - - - dev.brighten.antivpn - loader-utils - 1.10.0 - compile - - - - \ No newline at end of file diff --git a/Bukkit/Plugin/build.gradle b/Bukkit/Plugin/build.gradle new file mode 100644 index 0000000..c4f4cba --- /dev/null +++ b/Bukkit/Plugin/build.gradle @@ -0,0 +1,18 @@ +plugins { + id 'com.gradleup.shadow' +} + +dependencies { + compileOnly 'org.spigotmc:spigot-api:1.20.2-R0.1-SNAPSHOT' + compileOnly project(path: ':Common:Source', configuration: 'shadow') + compileOnly project(':Common:loader-utils') + implementation 'org.bstats:bstats-bukkit:2.2.1' +} + +shadowJar { + archiveClassifier.set('') + relocate 'org.bstats', 'dev.brighten.antivpn.bukkit.org.bstats' + relocate 'org.yaml.snakeyaml', 'dev.brighten.antivpn.shaded.org.yaml.snakeyaml' +} + +tasks.build.dependsOn shadowJar diff --git a/Bukkit/Plugin/pom.xml b/Bukkit/Plugin/pom.xml deleted file mode 100644 index 182d091..0000000 --- a/Bukkit/Plugin/pom.xml +++ /dev/null @@ -1,118 +0,0 @@ - - - - - 4.0.0 - - dev.brighten.antivpn - Bukkit - 1.10.0 - - - Plugin - - - 17 - 17 - UTF-8 - - - - - spigot-repo - https://hub.spigotmc.org/nexus/content/repositories/snapshots/ - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.13.0 - - 17 - 17 - -XDignore.symbol.file - - - - org.apache.maven.plugins - maven-shade-plugin - 3.6.0 - - - package - - shade - - - false - - - org.bstats - - dev.brighten.antivpn.bukkit.org.bstats - - - org.yaml.snakeyaml - dev.brighten.antivpn.shaded.org.yaml.snakeyaml - - - - - - - - - - src/main/resources - true - - - - - - - org.spigotmc - spigot-api - 1.20.2-R0.1-SNAPSHOT - provided - - - dev.brighten.antivpn - Source - 1.10.0 - provided - - - org.bstats - bstats-bukkit - 2.2.1 - compile - - - dev.brighten.antivpn - loader-utils - 1.10.0 - provided - - - - \ No newline at end of file diff --git a/Bukkit/pom.xml b/Bukkit/pom.xml deleted file mode 100644 index 2cb1c28..0000000 --- a/Bukkit/pom.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - AntiVPN - dev.brighten.antivpn - 1.10.0 - - pom - - Plugin - Loader - - - 4.0.0 - - Bukkit - - - 17 - 17 - - - \ No newline at end of file diff --git a/Bungee/BungeeLoader/build.gradle b/Bungee/BungeeLoader/build.gradle new file mode 100644 index 0000000..8b9c8e0 --- /dev/null +++ b/Bungee/BungeeLoader/build.gradle @@ -0,0 +1,26 @@ +plugins { + id 'com.gradleup.shadow' +} + +evaluationDependsOn(':Bungee:BungeePlugin') + +dependencies { + compileOnly 'net.md-5:bungeecord-api:1.21-R0.2' + compileOnly project(':Bungee:BungeePlugin') + implementation project(':Common:loader-utils') +} + +shadowJar { + archiveClassifier.set('') + + // Include the shaded plugin jar as a single resource file + from(project(':Bungee:BungeePlugin').tasks.shadowJar) { + rename { 'antivpn-bungee.jarinjar' } + } +} + +tasks.named('shadowJar') { + dependsOn(':Bungee:BungeePlugin:shadowJar') +} + +tasks.build.dependsOn shadowJar diff --git a/Bungee/BungeeLoader/pom.xml b/Bungee/BungeeLoader/pom.xml deleted file mode 100644 index 9d19d14..0000000 --- a/Bungee/BungeeLoader/pom.xml +++ /dev/null @@ -1,103 +0,0 @@ - - - - - 4.0.0 - - dev.brighten.antivpn - Bungee - 1.10.0 - ../pom.xml - - - dev.brighten.antivpn.bungee - BungeeLoader - - - 17 - 17 - UTF-8 - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.13.0 - - 17 - 17 - -XDignore.symbol.file - - - - org.apache.maven.plugins - maven-shade-plugin - 3.6.0 - - - package - - shade - - - false - - - antivpn-bungee.jarinjar - ${project.parent.basedir}/BungeePlugin/target/BungeePlugin-${project.version}.jar - - - - - - - - - - src/main/resources - true - - - - - - - net.md-5 - bungeecord-api - 1.21-R0.2 - jar - provided - - - dev.brighten.antivpn - Plugin - ${project.version} - provided - - - dev.brighten.antivpn - loader-utils - 1.10.0 - compile - - - - \ No newline at end of file diff --git a/Bungee/BungeePlugin/build.gradle b/Bungee/BungeePlugin/build.gradle new file mode 100644 index 0000000..f752a6d --- /dev/null +++ b/Bungee/BungeePlugin/build.gradle @@ -0,0 +1,18 @@ +plugins { + id 'com.gradleup.shadow' +} + +dependencies { + compileOnly 'net.md-5:bungeecord-api:1.21-R0.2' + compileOnly project(path: ':Common:Source', configuration: 'shadow') + compileOnly project(':Common:loader-utils') + implementation 'org.bstats:bstats-bungeecord:2.2.1' +} + +shadowJar { + archiveClassifier.set('') + relocate 'org.bstats', 'dev.brighten.antivpn.bungee.org.bstats' + relocate 'org.yaml.snakeyaml', 'dev.brighten.antivpn.shaded.org.yaml.snakeyaml' +} + +tasks.build.dependsOn shadowJar diff --git a/Bungee/BungeePlugin/pom.xml b/Bungee/BungeePlugin/pom.xml deleted file mode 100644 index e6f1a46..0000000 --- a/Bungee/BungeePlugin/pom.xml +++ /dev/null @@ -1,112 +0,0 @@ - - - - - 4.0.0 - - dev.brighten.antivpn - Bungee - 1.10.0 - ../pom.xml - - - BungeePlugin - - - 17 - 17 - UTF-8 - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.13.0 - - 17 - 17 - -XDignore.symbol.file - - - - org.apache.maven.plugins - maven-shade-plugin - 3.6.0 - - - - org.bstats - - dev.brighten.antivpn.bungee.org.bstats - - - org.yaml.snakeyaml - dev.brighten.antivpn.shaded.org.yaml.snakeyaml - - - - - - package - - shade - - - - - - - - src/main/resources - true - - - - - - - dev.brighten.antivpn - Source - 1.10.0 - provided - - - net.md-5 - bungeecord-api - 1.21-R0.2 - jar - provided - - - org.bstats - bstats-bungeecord - 2.2.1 - compile - - - dev.brighten.antivpn - loader-utils - 1.10.0 - provided - - - - \ No newline at end of file diff --git a/Bungee/pom.xml b/Bungee/pom.xml deleted file mode 100644 index bcc273a..0000000 --- a/Bungee/pom.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - AntiVPN - dev.brighten.antivpn - 1.10.0 - - pom - 4.0.0 - - Bungee - - \ No newline at end of file diff --git a/Common/Source/build.gradle b/Common/Source/build.gradle new file mode 100644 index 0000000..bc89fd7 --- /dev/null +++ b/Common/Source/build.gradle @@ -0,0 +1,40 @@ +plugins { + id 'com.gradleup.shadow' +} + +dependencies { + implementation 'org.ow2.asm:asm:9.8' + implementation 'org.ow2.asm:asm-commons:9.8' + implementation 'org.yaml:snakeyaml:2.2' + implementation 'org.jetbrains:annotations:26.0.2' + + compileOnly 'com.mysql:mysql-connector-j:9.3.0' + compileOnly 'com.h2database:h2:2.2.220' + compileOnly 'com.github.ben-manes.caffeine:caffeine:3.1.8' + compileOnly 'org.mongodb:mongo-java-driver:3.12.14' +} + +jar { + enabled = false +} + +shadowJar { + archiveClassifier.set('') + relocate 'org.yaml.snakeyaml', 'dev.brighten.antivpn.shaded.org.yaml.snakeyaml' + relocate 'com.github.benmanes.caffeine', 'dev.brighten.antivpn.shaded.com.github.benmanes.caffeine' + relocate 'org.h2', 'dev.brighten.antivpn.shaded.org.h2' + relocate 'org.bson', 'dev.brighten.antivpn.shaded.org.bson' + relocate 'com.mongodb', 'dev.brighten.antivpn.shaded.com.mongodb' + relocate 'com.mysql.cj', 'dev.brighten.antivpn.shaded.com.mysql.cj' + relocate 'com.mysql.jdbc', 'dev.brighten.antivpn.shaded.com.mysql.jdbc' + + dependencies { + exclude 'dev/brighten/antivpn/depends/Relocate*' + exclude 'dev/brighten/antivpn/depends/MavenLibraries*' + } +} + +tasks.build.dependsOn shadowJar +components.java.withVariantsFromConfiguration(configurations.shadowRuntimeElements) { + skip() +} diff --git a/Common/Source/pom.xml b/Common/Source/pom.xml deleted file mode 100644 index 1a60f07..0000000 --- a/Common/Source/pom.xml +++ /dev/null @@ -1,199 +0,0 @@ - - - - - 4.0.0 - - dev.brighten.antivpn - Common - 1.10.0 - - - Source - - - 17 - 17 - UTF-8 - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.13.0 - - 17 - 17 - -XDignore.symbol.file - - - org.projectlombok - lombok - 1.18.44 - - - - - - org.apache.maven.plugins - maven-shade-plugin - 3.6.0 - - - package - - shade - - - false - - - org.yaml.snakeyaml - dev.brighten.antivpn.shaded.org.yaml.snakeyaml - - - dev.brighten.antivpn.depends.Relocate - dev.brighten.antivpn.depends.MavenLibraries - - - - com.github.benmanes.caffeine - dev.brighten.antivpn.shaded.com.github.benmanes.caffeine - - - org.h2 - dev.brighten.antivpn.shaded.org.h2 - - - dev.brighten.antivpn.depends.Relocate - dev.brighten.antivpn.depends.MavenLibraries - - - - org.bson - dev.brighten.antivpn.shaded.org.bson - - - dev.brighten.antivpn.depends.Relocate - dev.brighten.antivpn.depends.MavenLibraries - - - - com.mongodb - dev.brighten.antivpn.shaded.com.mongodb - - - dev.brighten.antivpn.depends.Relocate - dev.brighten.antivpn.depends.MavenLibraries - - - - com.mysql.cj - dev.brighten.antivpn.shaded.com.mysql.cj - - - dev.brighten.antivpn.depends.Relocate - dev.brighten.antivpn.depends.MavenLibraries - - - - com.mysql.jdbc - dev.brighten.antivpn.shaded.com.mysql.jdbc - - - dev.brighten.antivpn.depends.Relocate - dev.brighten.antivpn.depends.MavenLibraries - - - - - - - - - - - src/main/resources - true - - - - - - - funkemunky-releases - https://nexus.funkemunky.cc/content/repositories/releases/ - - - - - - com.mysql - mysql-connector-j - 9.3.0 - jar - provided - - - com.h2database - h2 - 2.2.220 - provided - - - org.ow2.asm - asm - 9.8 - compile - - - org.ow2.asm - asm-commons - 9.8 - compile - - - org.yaml - snakeyaml - 2.2 - compile - - - com.github.ben-manes.caffeine - caffeine - 3.1.8 - provided - - - org.mongodb - mongo-java-driver - 3.12.14 - provided - - - org.jetbrains - annotations - 26.0.2 - compile - - - - diff --git a/Common/loader-utils/build.gradle b/Common/loader-utils/build.gradle new file mode 100644 index 0000000..99c498f --- /dev/null +++ b/Common/loader-utils/build.gradle @@ -0,0 +1,3 @@ +dependencies { + // No special dependencies for loader-utils other than lombok from root +} diff --git a/Common/loader-utils/pom.xml b/Common/loader-utils/pom.xml deleted file mode 100644 index 2244848..0000000 --- a/Common/loader-utils/pom.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - - - 4.0.0 - - dev.brighten.antivpn - Common - 1.10.0 - - - loader-utils - - - 17 - 17 - UTF-8 - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.13.0 - - 17 - 17 - -XDignore.symbol.file - - - org.projectlombok - lombok - 1.18.44 - - - - - - - - src/main/resources - true - - - - - \ No newline at end of file diff --git a/Common/pom.xml b/Common/pom.xml deleted file mode 100644 index e2c9efc..0000000 --- a/Common/pom.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - AntiVPN - dev.brighten.antivpn - 1.10.0 - - pom - - loader-utils - Source - - 4.0.0 - - Common - - - 17 - 17 - - - \ No newline at end of file diff --git a/Sponge/SpongeLoader/build.gradle b/Sponge/SpongeLoader/build.gradle new file mode 100644 index 0000000..f9d5234 --- /dev/null +++ b/Sponge/SpongeLoader/build.gradle @@ -0,0 +1,26 @@ +plugins { + id 'com.gradleup.shadow' +} + +evaluationDependsOn(':Sponge:SpongePlugin') + +dependencies { + compileOnly 'org.spongepowered:spongeapi:11.0.0' + compileOnly project(':Sponge:SpongePlugin') + implementation project(':Common:loader-utils') +} + +shadowJar { + archiveClassifier.set('') + + // Include the shaded plugin jar as a single resource file + from(project(':Sponge:SpongePlugin').tasks.shadowJar) { + rename { 'antivpn-sponge.jarinjar' } + } +} + +tasks.named('shadowJar') { + dependsOn(':Sponge:SpongePlugin:shadowJar') +} + +tasks.build.dependsOn shadowJar diff --git a/Sponge/SpongeLoader/pom.xml b/Sponge/SpongeLoader/pom.xml deleted file mode 100644 index c4c6604..0000000 --- a/Sponge/SpongeLoader/pom.xml +++ /dev/null @@ -1,113 +0,0 @@ - - - - - 4.0.0 - - dev.brighten.antivpn - Sponge - 1.10.0 - ../pom.xml - - - SpongeLoader - - - 17 - 17 - UTF-8 - - - - - maven-repo - https://nexus.funkemunky.cc/repository/maven-public/ - - - funkemunky-releases - https://nexus.funkemunky.cc/content/repositories/releases/ - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.13.0 - - 17 - 17 - -XDignore.symbol.file - - - - org.apache.maven.plugins - maven-shade-plugin - 3.6.0 - - - package - - shade - - - false - - - antivpn-sponge.jarinjar - ${project.parent.basedir}/SpongePlugin/target/SpongePlugin-${project.version}.jar - - - - - - - - - - src/main/resources - true - - - - - - - org.spongepowered - spongeapi - 11.0.0 - provided - - - dev.brighten.antivpn - SpongePlugin - ${project.version} - provided - - - dev.brighten.antivpn - loader-utils - 1.10.0 - compile - - - - - \ No newline at end of file diff --git a/Sponge/SpongePlugin/build.gradle b/Sponge/SpongePlugin/build.gradle new file mode 100644 index 0000000..a9c2b27 --- /dev/null +++ b/Sponge/SpongePlugin/build.gradle @@ -0,0 +1,28 @@ +plugins { + id 'com.gradleup.shadow' +} + +dependencies { + compileOnly 'org.spongepowered:spongeapi:11.0.0' + compileOnly project(path: ':Common:Source', configuration: 'shadow') + compileOnly project(':Common:loader-utils') +} + +shadowJar { + archiveClassifier.set('') + + // SpongePlugin pom.xml had some excludes in shade plugin + exclude 'com/google/**' + exclude 'org/objectweb/**' + exclude 'org/checkerframework/**' + + relocate 'org.yaml.snakeyaml', 'dev.brighten.antivpn.shaded.org.yaml.snakeyaml' + relocate 'com.github.benmanes.caffeine', 'dev.brighten.antivpn.shaded.com.github.benmanes.caffeine' + relocate 'org.h2', 'dev.brighten.antivpn.shaded.org.h2' + relocate 'org.bson', 'dev.brighten.antivpn.shaded.org.bson' + relocate 'com.mongodb', 'dev.brighten.antivpn.shaded.com.mongodb' + relocate 'com.mysql.cj', 'dev.brighten.antivpn.shaded.com.mysql.cj' + relocate 'com.mysql.jdbc', 'dev.brighten.antivpn.shaded.com.mysql.jdbc' +} + +tasks.build.dependsOn shadowJar diff --git a/Sponge/SpongePlugin/pom.xml b/Sponge/SpongePlugin/pom.xml deleted file mode 100644 index dc976d0..0000000 --- a/Sponge/SpongePlugin/pom.xml +++ /dev/null @@ -1,175 +0,0 @@ - - - - - 4.0.0 - - dev.brighten.antivpn - Sponge - 1.10.0 - ../pom.xml - - - SpongePlugin - - - - maven-repo - https://nexus.funkemunky.cc/repository/maven-public/ - - - funkemunky-releases - https://nexus.funkemunky.cc/content/repositories/releases/ - - - - - - org.spongepowered - spongeapi - 11.0.0 - provided - - - dev.brighten.antivpn - loader-utils - 1.10.0 - provided - - - dev.brighten.antivpn - Source - 1.10.0 - provided - - - - - 17 - 17 - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.13.0 - - 17 - 17 - -XDignore.symbol.file - - - - org.apache.maven.plugins - maven-shade-plugin - 3.6.0 - - - package - - shade - - - - - *:* - - com/google/** - org/objectweb/** - org/checkerframework/** - - - - - - - org.yaml.snakeyaml - dev.brighten.antivpn.shaded.org.yaml.snakeyaml - - - dev.brighten.antivpn.depends.Relocate - dev.brighten.antivpn.depends.MavenLibraries - - - - com.github.benmanes.caffeine - dev.brighten.antivpn.shaded.com.github.benmanes.caffeine - - - org.h2 - dev.brighten.antivpn.shaded.org.h2 - - - dev.brighten.antivpn.depends.Relocate - dev.brighten.antivpn.depends.MavenLibraries - - - - org.bson - dev.brighten.antivpn.shaded.org.bson - - - dev.brighten.antivpn.depends.Relocate - dev.brighten.antivpn.depends.MavenLibraries - - - - com.mongodb - dev.brighten.antivpn.shaded.com.mongodb - - - dev.brighten.antivpn.depends.Relocate - dev.brighten.antivpn.depends.MavenLibraries - - - - com.mysql.cj - dev.brighten.antivpn.shaded.com.mysql.cj - - - dev.brighten.antivpn.depends.Relocate - dev.brighten.antivpn.depends.MavenLibraries - - - - com.mysql.jdbc - dev.brighten.antivpn.shaded.com.mysql.jdbc - - - dev.brighten.antivpn.depends.Relocate - dev.brighten.antivpn.depends.MavenLibraries - - - - - - - - - - - src/main/resources - true - - - - - diff --git a/Sponge/pom.xml b/Sponge/pom.xml deleted file mode 100644 index 2b0d1f2..0000000 --- a/Sponge/pom.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - 4.0.0 - - dev.brighten.antivpn - AntiVPN - 1.10.0 - - pom - - SpongePlugin - SpongeLoader - - - Sponge - - - 17 - 17 - UTF-8 - - - \ No newline at end of file diff --git a/Universal/pom.xml b/Universal/pom.xml deleted file mode 100644 index e092308..0000000 --- a/Universal/pom.xml +++ /dev/null @@ -1,101 +0,0 @@ - - - - - 4.0.0 - - dev.brighten.antivpn - AntiVPN - 1.10.0 - - - Universal - - - 17 - 17 - UTF-8 - - - - - dev.brighten.antivpn.bukkit - Loader - ${project.version} - compile - - - dev.brighten.antivpn - VelocityLoader - ${project.version} - compile - - - dev.brighten.antivpn.bungee - BungeeLoader - ${project.version} - compile - - - - - - - org.apache.maven.plugins - maven-shade-plugin - 3.6.0 - - - package - - shade - - - AntiVPN-${project.version}-universal - false - - - - antivpn-source.jarinjar - ${project.parent.basedir}/Common/Source/target/Source-${project.version}.jar - - - - - org.yaml.snakeyaml - dev.brighten.antivpn.shaded.org.yaml.snakeyaml - - - org.bstats - dev.brighten.antivpn.shaded.org.bstats - - - org.objectweb - dev.brighten.antivpn.shaded.org.objectweb - - - - - - - - - - - \ No newline at end of file diff --git a/Velocity/VelocityLoader/build.gradle b/Velocity/VelocityLoader/build.gradle new file mode 100644 index 0000000..74bc7d1 --- /dev/null +++ b/Velocity/VelocityLoader/build.gradle @@ -0,0 +1,30 @@ +plugins { + id 'com.gradleup.shadow' +} + +evaluationDependsOn(':Velocity:VelocityPlugin') + +dependencies { + compileOnly 'com.velocitypowered:velocity-api:3.4.0-SNAPSHOT' + compileOnly project(':Velocity:VelocityPlugin') + implementation project(':Common:loader-utils') + implementation 'org.bstats:bstats-velocity:2.2.1' +} + +shadowJar { + archiveClassifier.set('') + + // Include the shaded plugin jar as a single resource file + from(project(':Velocity:VelocityPlugin').tasks.shadowJar) { + rename { 'antivpn-velocity.jarinjar' } + } + + relocate 'org.bstats', 'dev.brighten.antivpn.velocity.org.bstats' + relocate 'org.yaml.snakeyaml', 'dev.brighten.antivpn.shaded.org.yaml.snakeyaml' +} + +tasks.named('shadowJar') { + dependsOn(':Velocity:VelocityPlugin:shadowJar') +} + +tasks.build.dependsOn shadowJar diff --git a/Velocity/VelocityLoader/pom.xml b/Velocity/VelocityLoader/pom.xml deleted file mode 100644 index 1d9598b..0000000 --- a/Velocity/VelocityLoader/pom.xml +++ /dev/null @@ -1,125 +0,0 @@ - - - - - 4.0.0 - - dev.brighten.antivpn - Velocity - 1.10.0 - ../pom.xml - - - VelocityLoader - - - 17 - 17 - UTF-8 - - - - - velocity - https://nexus.funkemunky.cc/repository/papermc-public/ - - - - - - com.velocitypowered - velocity-api - 3.4.0-SNAPSHOT - provided - - - org.bstats - bstats-velocity - 2.2.1 - compile - - - dev.brighten.antivpn - loader-utils - 1.10.0 - compile - - - dev.brighten.antivpn - VelocityPlugin - 1.10.0 - provided - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.13.0 - - 17 - 17 - -XDignore.symbol.file - - - - org.apache.maven.plugins - maven-shade-plugin - 3.6.0 - - - package - - shade - - - false - - - antivpn-velocity.jarinjar - ${project.parent.basedir}/VelocityPlugin/target/VelocityPlugin-${project.version}.jar - - - - - org.bstats - - dev.brighten.antivpn.velocity.org.bstats - - - org.yaml.snakeyaml - dev.brighten.antivpn.shaded.org.yaml.snakeyaml - - - - - - - - - - src/main/resources - true - - - - - \ No newline at end of file diff --git a/Velocity/VelocityPlugin/build.gradle b/Velocity/VelocityPlugin/build.gradle new file mode 100644 index 0000000..6754670 --- /dev/null +++ b/Velocity/VelocityPlugin/build.gradle @@ -0,0 +1,18 @@ +plugins { + id 'com.gradleup.shadow' +} + +dependencies { + compileOnly 'com.velocitypowered:velocity-api:3.4.0-SNAPSHOT' + compileOnly project(path: ':Common:Source', configuration: 'shadow') + compileOnly project(':Common:loader-utils') + implementation 'org.bstats:bstats-velocity:2.2.1' +} + +shadowJar { + archiveClassifier.set('') + relocate 'org.bstats', 'dev.brighten.antivpn.velocity.org.bstats' + relocate 'org.yaml.snakeyaml', 'dev.brighten.antivpn.shaded.org.yaml.snakeyaml' +} + +tasks.build.dependsOn shadowJar diff --git a/Velocity/VelocityPlugin/pom.xml b/Velocity/VelocityPlugin/pom.xml deleted file mode 100644 index 45317d0..0000000 --- a/Velocity/VelocityPlugin/pom.xml +++ /dev/null @@ -1,118 +0,0 @@ - - - - - 4.0.0 - - dev.brighten.antivpn - AntiVPN - 1.10.0 - ../../pom.xml - - - VelocityPlugin - - - 17 - 17 - UTF-8 - - - - - velocity - https://nexus.funkemunky.cc/repository/papermc-public/ - - - - - - com.velocitypowered - velocity-api - 3.4.0-SNAPSHOT - provided - - - dev.brighten.antivpn - Source - 1.10.0 - provided - - - org.bstats - bstats-velocity - 2.2.1 - compile - - - dev.brighten.antivpn - loader-utils - 1.10.0 - provided - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.13.0 - - 17 - 17 - -XDignore.symbol.file - - - - org.apache.maven.plugins - maven-shade-plugin - 3.6.0 - - - - org.bstats - - dev.brighten.antivpn.velocity.org.bstats - - - org.yaml.snakeyaml - dev.brighten.antivpn.shaded.org.yaml.snakeyaml - - - - - - package - - shade - - - - - - - - src/main/resources - true - - - - - \ No newline at end of file diff --git a/Velocity/pom.xml b/Velocity/pom.xml deleted file mode 100644 index d126240..0000000 --- a/Velocity/pom.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - AntiVPN - dev.brighten.antivpn - 1.10.0 - - pom - 4.0.0 - - Velocity - - - 17 - 17 - - \ No newline at end of file diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..57472fa --- /dev/null +++ b/build.gradle @@ -0,0 +1,70 @@ +plugins { + id 'java' + id 'com.gradleup.shadow' version '9.4.1' +} + +allprojects { + group = 'dev.brighten.antivpn' + version = '1.10.0' + + repositories { + maven {url 'https://nexus.funkemunky.cc/repository/maven-central/'} + maven { url 'https://nexus.funkemunky.cc/content/repositories/releases/' } + maven { url 'https://nexus.funkemunky.cc/repository/papermc-public/' } + maven { url 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/' } + maven { url 'https://oss.sonatype.org/content/repositories/snapshots' } + maven { url 'https://repo.spongepowered.org/repository/maven-public/' } + maven { url 'https://jitpack.io' } + } + + apply plugin: 'java' + + java { + toolchain { + languageVersion = JavaLanguageVersion.of(21) + } + } + + tasks.withType(JavaCompile).configureEach { + options.encoding = 'UTF-8' + options.compilerArgs << '-XDignore.symbol.file' + } + + dependencies { + compileOnly 'org.projectlombok:lombok:1.18.44' + annotationProcessor 'org.projectlombok:lombok:1.18.44' + } +} + +evaluationDependsOn(':Common:Source') +evaluationDependsOn(':Bukkit:Loader') +evaluationDependsOn(':Velocity:VelocityLoader') +evaluationDependsOn(':Bungee:BungeeLoader') + +dependencies { + implementation project(':Bukkit:Loader') + implementation project(':Velocity:VelocityLoader') + implementation project(':Bungee:BungeeLoader') +} + +shadowJar { + archiveFileName.set("AntiVPN-${project.version}-universal.jar") + + // Include the shaded Common:Source jar as a single resource + from(project(':Common:Source').tasks.shadowJar) { + rename { 'antivpn-source.jarinjar' } + } + + relocate 'org.yaml.snakeyaml', 'dev.brighten.antivpn.shaded.org.yaml.snakeyaml' + relocate 'org.bstats', 'dev.brighten.antivpn.shaded.org.bstats' + relocate 'org.objectweb', 'dev.brighten.antivpn.shaded.org.objectweb' +} + +tasks.named('shadowJar') { + dependsOn(':Common:Source:shadowJar') + dependsOn(':Bukkit:Loader:shadowJar') + dependsOn(':Velocity:VelocityLoader:shadowJar') + dependsOn(':Bungee:BungeeLoader:shadowJar') +} + +tasks.build.dependsOn shadowJar diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..3dc33e2 --- /dev/null +++ b/gradle.properties @@ -0,0 +1,2 @@ +systemProp.javax.net.ssl.trustStore=NONE +systemProp.javax.net.ssl.trustStoreType=Windows-ROOT diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..249e583 Binary files /dev/null and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..11b4103 --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Wed Apr 08 09:36:41 EDT 2026 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.0-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew new file mode 100644 index 0000000..1b6c787 --- /dev/null +++ b/gradlew @@ -0,0 +1,234 @@ +#!/bin/sh + +# +# Copyright © 2015-2021 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit + +APP_NAME="Gradle" +APP_BASE_NAME=${0##*/} + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..107acd3 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,89 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@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 + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@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="-Xmx64m" "-Xms64m" + +@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 execute + +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 execute + +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 + +: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 %* + +: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 diff --git a/pom.xml b/pom.xml deleted file mode 100644 index efd8dd1..0000000 --- a/pom.xml +++ /dev/null @@ -1,91 +0,0 @@ - - - - - 4.0.0 - - dev.brighten.antivpn - AntiVPN - pom - 1.10.0 - - - Common - Bungee - Bukkit - Velocity - Sponge - Universal - Velocity/VelocityLoader - Velocity/VelocityPlugin - Bungee/BungeeLoader - Bungee/BungeePlugin - - - - 17 - 17 - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.7.0 - - 17 - 17 - -XDignore.symbol.file - false - - - org.projectlombok - lombok - 1.18.44 - - - - - - - - src/main/resources - true - - - - - - - funkemunky-releases - https://nexus.funkemunky.cc/content/repositories/releases/ - - - - - - org.projectlombok - lombok - 1.18.44 - provided - - - - \ No newline at end of file diff --git a/settings.gradle b/settings.gradle new file mode 100644 index 0000000..ebda19f --- /dev/null +++ b/settings.gradle @@ -0,0 +1,17 @@ +rootProject.name = 'AntiVPN' + +include 'Common:Source' +include 'Common:loader-utils' + +include 'Bukkit:Plugin' +include 'Bukkit:Loader' + +include 'Bungee:BungeePlugin' +include 'Bungee:BungeeLoader' + +include 'Sponge:SpongePlugin' +include 'Sponge:SpongeLoader' + +include 'Velocity:VelocityPlugin' +include 'Velocity:VelocityLoader' +