--- a/net/minecraft/world/item/crafting/SmeltingRecipe.java
+++ b/net/minecraft/world/item/crafting/SmeltingRecipe.java
@@ -3,7 +3,16 @@
 import net.minecraft.world.item.ItemStack;
 import net.minecraft.world.level.block.Blocks;
 
+// CraftBukkit start
+import org.bukkit.NamespacedKey;
+import org.bukkit.craftbukkit.inventory.CraftFurnaceRecipe;
+import org.bukkit.craftbukkit.inventory.CraftItemStack;
+import org.bukkit.craftbukkit.inventory.CraftRecipe;
+import org.bukkit.inventory.Recipe;
+// CraftBukkit end
+
 public class SmeltingRecipe extends AbstractCookingRecipe {
+
     public SmeltingRecipe(String group, CookingBookCategory category, Ingredient ingredient, ItemStack result, float experience, int cookingTime) {
         super(RecipeType.SMELTING, group, category, ingredient, result, experience, cookingTime);
     }
@@ -17,4 +26,17 @@
     public RecipeSerializer<?> getSerializer() {
         return RecipeSerializer.SMELTING_RECIPE;
     }
+
+    // CraftBukkit start
+    @Override
+    public Recipe toBukkitRecipe(NamespacedKey id) {
+        CraftItemStack result = CraftItemStack.asCraftMirror(this.result);
+
+        CraftFurnaceRecipe recipe = new CraftFurnaceRecipe(id, result, CraftRecipe.toBukkit(this.ingredient), this.experience, this.cookingTime);
+        recipe.setGroup(this.group);
+        recipe.setCategory(CraftRecipe.getCategory(this.category()));
+
+        return recipe;
+    }
+    // CraftBukkit end
 }
