Edition comparison

/give — Java vs Bedrock

Minecraft 1.21.8. Full /give reference →

Java Edition
Syntax
Bedrock Edition
Syntax

Key differences

  • Bedrock uses the legacy `[data]` integer slot (variant/damage value) instead of Java 1.20.5+'s `[components]` syntax. Bedrock kept the pre-component item model.
  • Bedrock doesn't accept the `minecraft:` namespace prefix in `/give` — use the bare item name (`diamond_sword` not `minecraft:diamond_sword`).
  • Bedrock's `<components>` JSON only supports a small subset (`item_lock`, `keep_on_death`). Enchantments and custom names are not settable via /give — use /enchant and /nametag instead.
  • Bedrock supports negative amounts to remove items; Java does not.

Bedrock examples

Copy-pasteable. Run in chat with cheats enabled.

  • Give one diamond sword. No namespace prefix needed.

  • Give 16 lime-colored stained glass (data 5 = lime). The data slot is Bedrock-specific.

  • Lock the sword in the player's inventory — Bedrock-exclusive component.

Java examples

For contrast — these are the canonical Java forms.

  • Give the nearest player one diamond sword.

  • Give a full stack of cobblestone.

  • Sharpness V diamond sword via the component syntax.

Switching between editions — watch out for

  • If you copy a Java /give with components (`[enchantments={...}]`) into Bedrock, it will fail silently. Bedrock requires /enchant after /give.
  • Bedrock's item ID list mostly matches Java, but a few items have different IDs (e.g., Bedrock's `wool` is a single ID with data variants; Java has 16 unique IDs).

FAQ

What's the difference between /give in Java and Bedrock?
/give exists in both editions but the syntax differs — see the "Key differences" section above. The most common gotcha is that Java's component syntax (square brackets after the item ID) doesn't work in Bedrock.
Why doesn't my Java /give command work in Bedrock?
Bedrock has stricter syntax and doesn't support Java's modern component-based item syntax. If you copied a command from a Java tutorial, Bedrock will likely reject it silently or run a partial version. Use the Bedrock examples on this page as templates.
Does /give work the same on consoles and mobile?
Yes — Bedrock Edition is the same codebase on Windows 10, Xbox, PlayStation, Switch, iOS, and Android. The syntax shown here works on every Bedrock platform.

Other edition comparisons