Bytecoder icon indicating copy to clipboard operation
Bytecoder copied to clipboard

compile fail

Open 10142904 opened this issue 3 years ago • 1 comments

Hi, i try to convert my java app to js with Bytecoder, but get a error:

java -jar bytecoder-cli-2021-11-02-executable.jar -classpath=one-jar.jar -mainclass=com.simontuffs.onejar.Boot -builddirectory=. -backend=js -minify=false . . . 信息: Linked java.security.MessageDigest Exception in thread "main" java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) at org.springframework.boot.loader.Launcher.launch(Launcher.java:108) at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88) Caused by: java.lang.IllegalStateException: Cannot find static method getInstance in java/security/MessageDigest with signature java.security.MessageDigest(java.lang.String,java.security.Provider) at de.mirkosertic.bytecoder.core.BytecodeInstructionINVOKESTATIC.performLinking(BytecodeInstructionINVOKESTATIC.java:36) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveMethodSignatureAndBody(BytecodeLinkedClass.java:482) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveVirtualMethod(BytecodeLinkedClass.java:370) at de.mirkosertic.bytecoder.core.BytecodeInstructionINVOKEVIRTUAL.performLinking(BytecodeInstructionINVOKEVIRTUAL.java:55) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveMethodSignatureAndBody(BytecodeLinkedClass.java:482) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveVirtualMethod(BytecodeLinkedClass.java:370) at de.mirkosertic.bytecoder.core.BytecodeInstructionINVOKEVIRTUAL.performLinking(BytecodeInstructionINVOKEVIRTUAL.java:55) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveMethodSignatureAndBody(BytecodeLinkedClass.java:482) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveVirtualMethod(BytecodeLinkedClass.java:370) at de.mirkosertic.bytecoder.core.BytecodeInstructionINVOKEVIRTUAL.performLinking(BytecodeInstructionINVOKEVIRTUAL.java:55) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveMethodSignatureAndBody(BytecodeLinkedClass.java:482) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveVirtualMethod(BytecodeLinkedClass.java:370) at de.mirkosertic.bytecoder.core.BytecodeInstructionINVOKEVIRTUAL.performLinking(BytecodeInstructionINVOKEVIRTUAL.java:55) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveMethodSignatureAndBody(BytecodeLinkedClass.java:482) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveStaticMethod(BytecodeLinkedClass.java:452) at de.mirkosertic.bytecoder.core.BytecodeInstructionINVOKESTATIC.performLinking(BytecodeInstructionINVOKESTATIC.java:35) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveMethodSignatureAndBody(BytecodeLinkedClass.java:482) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveStaticMethod(BytecodeLinkedClass.java:452) at de.mirkosertic.bytecoder.core.BytecodeInstructionINVOKESTATIC.performLinking(BytecodeInstructionINVOKESTATIC.java:35) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveMethodSignatureAndBody(BytecodeLinkedClass.java:482) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveStaticMethod(BytecodeLinkedClass.java:452) at de.mirkosertic.bytecoder.core.BytecodeInstructionINVOKESTATIC.performLinking(BytecodeInstructionINVOKESTATIC.java:35) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveMethodSignatureAndBody(BytecodeLinkedClass.java:482) at de.mirkosertic.bytecoder.core.BytecodeLinkedClass.resolveStaticMethod(BytecodeLinkedClass.java:452) at de.mirkosertic.bytecoder.backend.CompileTarget.compile(CompileTarget.java:296) at de.mirkosertic.bytecoder.cli.BytecoderCLI.main(BytecoderCLI.java:132) ... 8 more

my java app's jar can be downloaded one-jar.jar

10142904 avatar May 11 '22 12:05 10142904

Hi!

Thank you for using Bytecoder!

It seems you are trying to compile a SpringBoot application. Unfortunately SpringBoot is currently NOT supported by Bytecoder due to limited Reflection and API support. So I am really sorry, there is no quick fix available to make it work.

Mirko

mirkosertic avatar Jun 03 '22 07:06 mirkosertic

Closed due to no further feedback.

mirkosertic avatar Mar 29 '23 16:03 mirkosertic