User Tools

Site Tools


tutorial:mixin_hotswaps

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Next revisionBoth sides next revision
tutorial:mixin_hotswaps [2019/10/24 21:42] – created draylartutorial:mixin_hotswaps [2019/10/24 22:45] – clarify DCEVM draylar
Line 2: Line 2:
 Mixins can't be hot-swapped in a default Fabric environment. To enable this functionality, you'll have to specify the ''-javaagent'' flag inside your VM options.   Mixins can't be hot-swapped in a default Fabric environment. To enable this functionality, you'll have to specify the ''-javaagent'' flag inside your VM options.  
  
-The only thing you'll need for step 1 is the sponge mixin jar. Fabric pulls this by default, so you should be able to locate it within your Gradle cache folder. IDEA users can look at the bottom of their project view on the left side of the screen to find the library:+The only pre-requisite is having a copy of the sponge mixin jar. Fabric pulls this by default, so you should be able to locate it within your Gradle cache folder. IDEA users can look at the bottom of their project view on the left side of the screen to find the library:
  
 {{https://i.imgur.com/fUrhss5.png}} {{https://i.imgur.com/fUrhss5.png}}
Line 11: Line 11:
  
 Run your game. You can now reload mixins using the same rules as normal: Run your game. You can now reload mixins using the same rules as normal:
- no adding or removing methods +  * no adding or removing methods 
- no changing method parameters +  no changing method parameters 
- no adding or removing fields+  no adding or removing fields
  
 === Notes === === Notes ===
 In my experience, Mixin hot-swapping didn't fully work until I updated to JDK 1.8.0 231 (latest). In my experience, Mixin hot-swapping didn't fully work until I updated to JDK 1.8.0 231 (latest).
 +DCEVM does not support mixin swapping from what I can see:
 +  * When run on Java 1.8:181, DCEVM and Mixin reloads do not work.
 +  * When run on DCEVM Java 11, you can reload, but the hot swap task freezes.
 +
 +If you're able to get DCEVM and Mixin swapping to work together, let us know!
  
  
tutorial/mixin_hotswaps.txt · Last modified: 2022/05/05 18:26 by 127.0.0.1