diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 52593dcbb..1db8466c4 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -41,10 +41,10 @@ jobs:
with:
maven-version: 3.9.6
- - name: Set up JDK 21
+ - name: Set up JDK 25
uses: actions/setup-java@v5
with:
- java-version: '21'
+ java-version: '25'
distribution: 'temurin'
cache: 'maven'
@@ -69,10 +69,10 @@ jobs:
steps:
- uses: actions/checkout@v6
- - name: Set up JDK 21
+ - name: Set up JDK 25
uses: actions/setup-java@v5
with:
- java-version: '21'
+ java-version: '25'
distribution: 'temurin'
- name: Build with Maven
diff --git a/.github/workflows/ci_release.yml b/.github/workflows/ci_release.yml
index de12aa914..4392a1715 100644
--- a/.github/workflows/ci_release.yml
+++ b/.github/workflows/ci_release.yml
@@ -22,10 +22,10 @@ jobs:
steps:
- uses: actions/checkout@v6
- - name: Set up JDK 21
+ - name: Set up JDK 25
uses: actions/setup-java@v5
with:
- java-version: '21'
+ java-version: '25'
distribution: 'temurin'
- name: Get version from tag
diff --git a/.github/workflows/ci_windows.yml b/.github/workflows/ci_windows.yml
index 5c8b152ff..914cf4692 100644
--- a/.github/workflows/ci_windows.yml
+++ b/.github/workflows/ci_windows.yml
@@ -45,10 +45,10 @@ jobs:
with:
maven-version: 3.9.6
- - name: Set up JDK 21
+ - name: Set up JDK 25
uses: actions/setup-java@v5
with:
- java-version: '21'
+ java-version: '25'
distribution: 'temurin'
- name: Build with Maven
diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml
index e7cb442f2..bf7f04822 100644
--- a/.github/workflows/nightly.yml
+++ b/.github/workflows/nightly.yml
@@ -18,10 +18,10 @@ jobs:
steps:
- uses: actions/checkout@v6
- - name: Set up JDK 21
+ - name: Set up JDK 25
uses: actions/setup-java@v5
with:
- java-version: '21'
+ java-version: '25'
distribution: 'temurin'
- name: Build with Maven
diff --git a/.mvn/jvm.config b/.mvn/jvm.config
new file mode 100644
index 000000000..818693d94
--- /dev/null
+++ b/.mvn/jvm.config
@@ -0,0 +1,4 @@
+-Djdk.xml.maxGeneralEntitySizeLimit=0
+-Djdk.xml.maxParameterEntitySizeLimit=0
+-Djdk.xml.totalEntitySizeLimit=0
+-Djdk.xml.entityExpansionLimit=0
diff --git a/AGENTS.md b/AGENTS.md
index 69067aa81..a1776f86d 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -164,7 +164,7 @@ These checks run automatically on PRs and MUST pass:
| `pre-commit.yml` | Conventional commit message format on every commit; codespell on `*.py`, `*.c`, `*.h`, `*.md`, `*.rst`, `*.yml` |
| `docs_build.yml` | Documentation builds without errors |
-The main CI builds with **JDK 21** and **Maven 3.9.6**, with **ESP-IDF v5.4** on the runner.
+The main CI builds with **JDK 25** and **Maven 3.9.6**, with **ESP-IDF v5.4** on the runner.
## Quality
diff --git a/bundles/com.espressif.idf.branding/Espressif-IDE.launch b/bundles/com.espressif.idf.branding/Espressif-IDE.launch
index aa85769d0..7e87927ac 100644
--- a/bundles/com.espressif.idf.branding/Espressif-IDE.launch
+++ b/bundles/com.espressif.idf.branding/Espressif-IDE.launch
@@ -36,7 +36,7 @@
-
+
diff --git a/bundles/pom.xml b/bundles/pom.xml
index 3f12d034d..d28fa998b 100644
--- a/bundles/pom.xml
+++ b/bundles/pom.xml
@@ -46,7 +46,7 @@
target-platform-configuration
${tycho-version}
- org.eclipse.justj.openjdk.hotspot.jre.full-21
+ org.eclipse.justj.openjdk.hotspot.jre.full-25
win32
diff --git a/docs/en/prerequisites.rst b/docs/en/prerequisites.rst
index e14204275..1ecf3ffab 100644
--- a/docs/en/prerequisites.rst
+++ b/docs/en/prerequisites.rst
@@ -21,7 +21,7 @@ Software
The minimum requirements for running the Espressif-IDE are listed below:
-- `Java 21 `_ and above
+- `Java 25 `_ and above
- `Python 3.12 `_ and above
- `Git `_
- `ESP-IDF Prerequisites `_ based on your operating system
diff --git a/docs/zh_CN/prerequisites.rst b/docs/zh_CN/prerequisites.rst
index 3f9d2fd68..d33ceb949 100644
--- a/docs/zh_CN/prerequisites.rst
+++ b/docs/zh_CN/prerequisites.rst
@@ -21,7 +21,7 @@
运行 Espressif-IDE 的最低要求如下:
-- `Java 21 `_ 及以上
+- `Java 25 `_ 及以上
- `Python 3.12 `_ 及以上
- `Git `_
- `ESP-IDF 依赖项 `_,取决于所使用的操作系统
diff --git a/releng/com.espressif.idf.configuration/pom.xml b/releng/com.espressif.idf.configuration/pom.xml
index de3c16ed4..f62624610 100644
--- a/releng/com.espressif.idf.configuration/pom.xml
+++ b/releng/com.espressif.idf.configuration/pom.xml
@@ -38,7 +38,7 @@
p2
consider
- org.eclipse.justj.openjdk.hotspot.jre.full-21
+ org.eclipse.justj.openjdk.hotspot.jre.full-25
linux
diff --git a/releng/com.espressif.idf.product/idf.product b/releng/com.espressif.idf.product/idf.product
index dc80438e1..36e33c094 100644
--- a/releng/com.espressif.idf.product/idf.product
+++ b/releng/com.espressif.idf.product/idf.product
@@ -14,11 +14,11 @@
- -Xms2048m -Xmx4096m -Dosgi.requiredJavaVersion=21 -Dosgi.instance.area.default=@user.home/workspace
+ -Xms2048m -Xmx4096m -Dosgi.requiredJavaVersion=25 -Dosgi.instance.area.default=@user.home/workspace
- -Xms2048m -Xmx4096m -Xdock:icon=../Resources/espressif.icns -XstartOnFirstThread -Dosgi.requiredJavaVersion=21 -Dorg.eclipse.swt.internal.carbon.smallFonts -Dosgi.instance.area.default=@user.home/workspace
+ -Xms2048m -Xmx4096m -Xdock:icon=../Resources/espressif.icns -XstartOnFirstThread -Dosgi.requiredJavaVersion=25 -Dorg.eclipse.swt.internal.carbon.smallFonts -Dosgi.instance.area.default=@user.home/workspace
- -Xms2048m -Xmx4096m -Dosgi.requiredJavaVersion=21 -Dosgi.instance.area.default=@user.home/workspace
+ -Xms2048m -Xmx4096m -Dosgi.requiredJavaVersion=25 -Dosgi.instance.area.default=@user.home/workspace
@@ -42,10 +42,10 @@
- org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-21
- org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-21
+ org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-25
+ org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-25
org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11
- org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-21
+ org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-25
diff --git a/releng/com.espressif.idf.product/pom.xml b/releng/com.espressif.idf.product/pom.xml
index 95155d6f9..cc3ad4ea7 100644
--- a/releng/com.espressif.idf.product/pom.xml
+++ b/releng/com.espressif.idf.product/pom.xml
@@ -114,7 +114,7 @@
target-platform-configuration
${tycho-version}
- org.eclipse.justj.openjdk.hotspot.jre.full-21
+ org.eclipse.justj.openjdk.hotspot.jre.full-25
win32
diff --git a/releng/com.espressif.idf.target/com.espressif.idf.target.target b/releng/com.espressif.idf.target/com.espressif.idf.target.target
index 8e3e67ba6..995099b86 100644
--- a/releng/com.espressif.idf.target/com.espressif.idf.target.target
+++ b/releng/com.espressif.idf.target/com.espressif.idf.target.target
@@ -1,9 +1,9 @@
-
+
-
+
@@ -17,7 +17,7 @@
-
+
@@ -37,14 +37,14 @@
-
+
-
+
@@ -58,22 +58,22 @@
-
-
-
-
+
+
+
+
-
+
-
+
-
+