RFR: 8240567: MethodTooLargeException thrown while creating a jlink image [v6]
Oliver Kopp
duke at openjdk.org
Sat Jul 1 10:09:54 UTC 2023
On Thu, 29 Jun 2023 20:26:58 GMT, Mandy Chung <mchung at openjdk.org> wrote:
>> Oliver Kopp has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Fix threshold
>
> test/jdk/tools/jlink/JLink100Modules.java line 40:
>
>> 38: * @library ../lib
>> 39: * @modules java.base/jdk.internal.jimage
>> 40: * jdk.jdeps/com.sun.tools.classfile
>
> I guess you copied this from other jlink tests. Do you know why jlink tests need `com.sun.tools.classfile`?
If it is not present, I get following output (sorry for German - `./configure` doesn't allow `JAVA_TOOL_OPTIONS` to be set to `-Duser.language=en`
windir='C:\WINDOWS' \
'c:\git-repositories\jdk\jdk\build\windows-x86_64-server-release\images\jdk\bin\javac' \
-J-Xmx768m \
-J-XX:MaxRAMPercentage=2.08333 \
-J'-Dtest.boot.jdk=c:\progra~1\openjdk\jdk-20~1.1' \
-J'-Djava.io.tmpdir=c:\git-repositories\jdk\jdk\build\windows-x86_64-server-release\test-support\jtreg_test_jdk_tools_jlink_JLink100Modules_java\tmp' \
-J-ea \
-J-esa \
-J-Dtest.vm.opts='-Xmx768m -XX:MaxRAMPercentage=2.08333 -Dtest.boot.jdk=c:\progra~1\openjdk\jdk-20~1.1 -Djava.io.tmpdir=c:\git-repositories\jdk\jdk\build\windows-x86_64-server-release\test-support\jtreg_test_jdk_tools_jlink_JLink100Modules_java\tmp -ea -esa' \
-J-Dtest.tool.vm.opts='-J-Xmx768m -J-XX:MaxRAMPercentage=2.08333 -J-Dtest.boot.jdk=c:\progra~1\openjdk\jdk-20~1.1 -J-Djava.io.tmpdir=c:\git-repositories\jdk\jdk\build\windows-x86_64-server-release\test-support\jtreg_test_jdk_tools_jlink_JLink100Modules_java\tmp -J-ea -J-esa' \
-J-Dtest.compiler.opts= \
-J-Dtest.java.opts= \
-J-Dtest.jdk='c:\git-repositories\jdk\jdk\build\windows-x86_64-server-release\images\jdk' \
-J-Dcompile.jdk='c:\git-repositories\jdk\jdk\build\windows-x86_64-server-release\images\jdk' \
-J-Dtest.timeout.factor=4.0 \
-J-Dtest.nativepath='c:\git-repositories\jdk\jdk\build\windows-x86_64-server-release\images\test\jdk\jtreg\native' \
-J-Dtest.root='C:\git-repositories\jdk\jdk\test\jdk' \
-J-Dtest.name=tools/jlink/JLink100Modules.java \
-J-Dtest.file='C:\git-repositories\jdk\jdk\test\jdk\tools\jlink\JLink100Modules.java' \
-J-Dtest.src='C:\git-repositories\jdk\jdk\test\jdk\tools\jlink' \
-J-Dtest.src.path='C:\git-repositories\jdk\jdk\test\jdk\tools\jlink;C:\git-repositories\jdk\jdk\test\jdk\tools\lib' \
-J-Dtest.classes='C:\git-repositories\jdk\jdk\build\windows-x86_64-server-release\test-support\jtreg_test_jdk_tools_jlink_JLink100Modules_java\classes\0\tools\jlink\JLink100Modules.d' \
-J-Dtest.class.path='C:\git-repositories\jdk\jdk\build\windows-x86_64-server-release\test-support\jtreg_test_jdk_tools_jlink_JLink100Modules_java\classes\0\tools\jlink\JLink100Modules.d;C:\git-repositories\jdk\jdk\build\windows-x86_64-server-release\test-support\jtreg_test_jdk_tools_jlink_JLink100Modules_java\classes\0\tools\lib' \
-J-Dtest.class.path.prefix='C:\git-repositories\jdk\jdk\test\jdk\tools\jlink;C:\git-repositories\jdk\jdk\build\windows-x86_64-server-release\test-support\jtreg_test_jdk_tools_jlink_JLink100Modules_java\classes\0\tools\lib' \
-J-Dtest.modules='java.base/jdk.internal.jimage jdk.jlink/jdk.tools.jlink.internal jdk.jlink/jdk.tools.jlink.plugin jdk.jlink/jdk.tools.jmod jdk.jlink/jdk.tools.jimage jdk.compiler' \
--add-modules java.base,jdk.jlink,jdk.compiler \
--add-exports java.base/jdk.internal.jimage=ALL-UNNAMED \
--add-exports jdk.jlink/jdk.tools.jlink.internal=ALL-UNNAMED \
--add-exports jdk.jlink/jdk.tools.jlink.plugin=ALL-UNNAMED \
--add-exports jdk.jlink/jdk.tools.jmod=ALL-UNNAMED \
--add-exports jdk.jlink/jdk.tools.jimage=ALL-UNNAMED \
-d 'C:\git-repositories\jdk\jdk\build\windows-x86_64-server-release\test-support\jtreg_test_jdk_tools_jlink_JLink100Modules_java\classes\0\tools\lib' \
-sourcepath 'C:\git-repositories\jdk\jdk\test\jdk\tools\lib' \
-classpath 'C:\git-repositories\jdk\jdk\build\windows-x86_64-server-release\test-support\jtreg_test_jdk_tools_jlink_JLink100Modules_java\classes\0\tools\lib' 'C:\git-repositories\jdk\jdk\test\jdk\tools\lib\tests\Helper.java' 'C:\git-repositories\jdk\jdk\test\jdk\tools\lib\tests\JImageGenerator.java' 'C:\git-repositories\jdk\jdk\test\jdk\tools\lib\tests\JImageValidator.java' 'C:\git-repositories\jdk\jdk\test\jdk\tools\lib\tests\Result.java'
direct:
C:\git-repositories\jdk\jdk\test\jdk\tools\lib\tests\JImageValidator.java:36: Fehler: Package com.sun.tools.classfile ist nicht sichtbar
import com.sun.tools.classfile.ClassFile;
^
(Package com.sun.tools.classfile wird in Modul jdk.jdeps deklariert, aber nicht in das unbenannte Modul exportiert)
C:\git-repositories\jdk\jdk\test\jdk\tools\lib\tests\JImageValidator.java:37: Fehler: Package com.sun.tools.classfile ist nicht sichtbar
import com.sun.tools.classfile.ConstantPoolException;
^
(Package com.sun.tools.classfile wird in Modul jdk.jdeps deklariert, aber nicht in das unbenannte Modul exportiert)
2 Fehler
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/14408#discussion_r1248754219
More information about the core-libs-dev
mailing list