Skip to content

Releases: Pieter12345/JavaLoader

JavaLoader version 0.0.8

13 Aug 23:52
08d111b

Choose a tag to compare

General changes

  • Change Contributing notice in the README, now accepting pull requests.

JavaLoader-Core changes

  • Add ProjectManager getter in JL project main classes.
  • Remove deprecated JavaLoaderProject.isEnabled().
  • Remove deprecated JavaProject.isEnabled().
  • Support wrapping the target platform using a custom ClassLoader.
  • Switch from array to List for internal JavaLoader project dependency parsing.

JavaLoader-Bukkit changes

  • Support depending on MC buncled libraries.
  • Remove deprecated BukkitCommand constructors.
  • Fix Bukkit example project compilation on recent MC versions.

JavaLoader-Velocity changes

  • Fix /javaloadervelocity tabcompletion with 0 arguments (thanks to @Ecconia).
  • Compile against Velocity-API 3.2.0-SNAPSHOT.
  • Implement getExecutorService() from Velocity's PluginContainer in JavaLoaderVelocityProject to prevent JavaLoader projects having to provide an implementation.
  • Fix exceptions when binding some events in JL-V due to providing a null PluginDescription.

Compatibility

JavaLoader-Bukkit: At least compatible with Bukkit servers (including Spigot) between version 1.12 and 1.12.1, but likely also with older versions.
JavaLoader-Velocity: At least compatible with Velocity between version 1.1.4 and 3.3.0.

JavaLoader version 0.0.7

24 May 16:09
bf49953

Choose a tag to compare

General changes

  • None

JavaLoader-Core changes

  • None

JavaLoader-Bukkit changes

  • Add compatibility with latest Spigot 1.17.1.
  • Compile against Spigot 1.18.2.

JavaLoader-Velocity changes

  • Compile against Velocity-API 3.0.0.

Compatibility

JavaLoader-Bukkit: At least compatible with Bukkit servers (including Spigot) between version 1.12 and 1.18.2, but likely also with older versions.
JavaLoader-Velocity: At least compatible with Velocity between version 1.1.4 and 3.0.0.

JavaLoader version 0.0.6

07 Jul 13:21
435a817

Choose a tag to compare

General changes

  • Give more useful exception when attempting to load a JavaLoader project that was compiled using a higher Java version than currently running.
  • Catch Errors and raw Throwables thrown in JavaLoader project methods that are called by JavaLoader, providing more useful feedback about how the user can fix this problem in their project.
  • Switch to Maven module setup, separating the project into a JavaLoader-Core and JavaLoader-Bukkit module.

JavaLoader-Core changes

  • Prevent high CPU load for cmdline JavaLoader on some systems.

JavaLoader-Bukkit changes

  • Add /javaloader help [subcommand] tabcompleter.
  • Compile against Spigot 1.17.1.

JavaLoader-Velocity changes

  • Add JavaLoader-Velocity module with a very first JavaLoader version for the Velocity Minecraft server proxy software.

Compatibility

JavaLoader-Bukkit: At least compatible with Bukkit servers (including Spigot) between version 1.12 and 1.17.1, but likely also with older versions.
JavaLoader-Velocity: At least compatible with Velocity between version 1.1.4 and 1.1.9.

JavaLoader version 0.0.5

11 May 03:21
9922716

Choose a tag to compare

Changes

  • Add compatibility with Java versions above JDK 8.
  • Fix NullPointerException when disabling JavaLoader due to no Java compiler being available.
  • Compile against Bukkit 1.15.2.

Compatibility

At least compatible with Bukkit servers between version 1.12 and 1.15.2, but likely also with older versions.

JavaLoader version 0.0.4

20 Jan 19:35
04b2b64

Choose a tag to compare

Changes

  • Synchronize JavaLoader project commands with clients to support client-side command validation/completion.
  • Compile against Bukkit 1.15.1.

Compatibility

At least compatible with Bukkit servers between version 1.12 and 1.15.1, but likely also with older versions.

JavaLoader version 0.0.3

16 Dec 17:22
414f7c0

Choose a tag to compare

Changes

  • Add plugin <pluginName> to specify plugin dependencies without having to specify the plugin's full path and version number.
  • Compile against Bukkit 1.15.

Compatibility

At least compatible with Bukkit servers between version 1.12 and 1.15, but likely also with older versions.

JavaLoader version 0.0.2

29 Jun 21:55
6ab25c8

Choose a tag to compare

Changes

  • No longer force JavaLoaderProjects to implement onLoad() and onUnload().
  • Support backslash file separator on non-Windows OSs.
  • Fix single project detection when loading a new project from the file system.
  • Fix command uninjection from Bukkit when a JavaLoader project unloads. Running an uninjected command would throw a stacktrace.
  • Use proper OS-dependent classpath separator. Fixes dependencies not being included on non-Windows OSs during JavaLoader project compilation.
  • Change BukkitCommand creation to chain-setters and deprecate old BukkitCommand constructor.
  • Send /javaloader <load/unload> exceptions to the commandsender instead of console.
  • Refactor JavaLoader core classes to the new core package. This breaks JavaLoader standalone projects (Fix is to import jl.core.JavaLoaderProject instead of jl.JavaLoaderProject).
  • Change the /javaloader unload/load/recompile [project] commands to /javaloader unload/load/recompile <project, *> to prevent accidental bulk unload/load/recompile operations.
  • Rename JavaProject.isEnabled() and JavaLoaderProject.isEnabled() to isLoaded().
  • Add clean() method to JavaProject that can be used to clean all binaries of the project.
  • Add isDisabled() and setDisabled(Boolean) methods to JavaProject to allow for disabling a project. Disabled projects cannot be loaded and loaded projects cannot be disabled (without unloading them first). Works through creating a .disabled file in the root of a JavaLoader project.
  • Fix missing dependency in JavaLoader standalone mode.
  • Fix classloading of project dependency classes.

JavaLoader version 0.0.1

05 Jul 16:12

Choose a tag to compare

This is the first release of JavaLoader. At this point, it is at least possible to:

  • Load, unload and recompile java projects in runtime.
  • Depend (include/provided) on jar files and other JavaLoader projects.
  • Get your project main class through the JavaLoader Bukkit plugin.
  • Run non-Bukkit projects from the standalone version (through commandline).

It is likely that more project settings will be added in the future and that the current way to provide dependencies will change with later releases, so make sure to keep an eye on the release notes when updating.