Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

202406版本,在 ARM 的 WIN11上会出现打开后卡死无响应的问题 #35

Closed
bigfish666 opened this issue Aug 7, 2024 · 21 comments

Comments

@bigfish666
Copy link

之前的版本都没有遇到此问题,升级后打开会卡死,右下角的状态是 setup check。完全删掉,重新安装也不行,还是会软件无响应。

@laomaolaile
Copy link
Contributor

您是从官网上下载的最新版本么?能否提供一下截图或者更多的信息

@bigfish666
Copy link
Author

bigfish666 commented Aug 7, 2024

是官网下载的最新版本。大概的状态是这样。

然后去看了一下日志:
!ENTRY org.riscvstudio.ide.tools.trace 4 0 2024-08-07 15:32:47.213
!MESSAGE FrameworkEvent ERROR
!STACK 0
java.util.zip.ZipException: Exception in opening zip file: C:\NucleiStudio\configuration\org.eclipse.osgi\642\0.cp\lib\libdqr.so
at org.eclipse.osgi.framework.util.SecureAction.getZipFile(SecureAction.java:367)
at org.eclipse.osgi.storage.bundlefile.ZipBundleFile.doOpen(ZipBundleFile.java:51)
at org.eclipse.osgi.storage.bundlefile.CloseableBundleFile.internalOpen(CloseableBundleFile.java:146)
at org.eclipse.osgi.storage.bundlefile.CloseableBundleFile.lockOpen(CloseableBundleFile.java:83)
at org.eclipse.osgi.storage.bundlefile.CloseableBundleFile.getEntry(CloseableBundleFile.java:285)
at org.eclipse.osgi.internal.loader.classpath.ClasspathEntry.loadManifest(ClasspathEntry.java:244)
at org.eclipse.osgi.internal.loader.classpath.ClasspathEntry.(ClasspathEntry.java:80)
at org.eclipse.osgi.internal.loader.ModuleClassLoader.createClassPathEntry(ModuleClassLoader.java:276)
at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.createClassPathEntry(ClasspathManager.java:379)
at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.getClasspath(ClasspathManager.java:327)
at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.addStandardClassPathEntry(ClasspathManager.java:236)
at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.addClassPathEntry(ClasspathManager.java:226)
at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findClassPathEntry(ClasspathManager.java:203)
at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.buildClasspath(ClasspathManager.java:177)
at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.(ClasspathManager.java:101)
at org.eclipse.osgi.internal.loader.EquinoxClassLoader.(EquinoxClassLoader.java:57)
at org.eclipse.osgi.internal.loader.BundleLoader.createClassLoaderPrivledged(BundleLoader.java:362)
at org.eclipse.osgi.internal.loader.BundleLoader.getModuleClassLoader(BundleLoader.java:273)
at org.eclipse.osgi.internal.loader.BundleLoader.findEntries(BundleLoader.java:927)
at org.eclipse.osgi.container.ModuleWiring.findEntries(ModuleWiring.java:287)
at org.eclipse.osgi.storage.ManifestLocalization.findResource(ManifestLocalization.java:242)
at org.eclipse.osgi.storage.ManifestLocalization.lookupResourceBundle(ManifestLocalization.java:172)
at org.eclipse.osgi.storage.ManifestLocalization.getResourceBundle(ManifestLocalization.java:138)
at org.eclipse.osgi.storage.ManifestLocalization.getHeaders(ManifestLocalization.java:78)
at org.eclipse.osgi.storage.BundleInfo$Generation.getHeaders(BundleInfo.java:194)
at org.eclipse.osgi.internal.framework.EquinoxBundle.privGetHeaders(EquinoxBundle.java:539)
at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:534)
at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:528)
at org.apache.aries.spifly.BaseActivator.getAllHeaders(BaseActivator.java:174)
at org.apache.aries.spifly.BaseActivator.addConsumerWeavingData(BaseActivator.java:120)
at org.apache.aries.spifly.ConsumerBundleTrackerCustomizer.addingBundle(ConsumerBundleTrackerCustomizer.java:37)
at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:477)
at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:1)
at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:257)
at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:184)
at org.osgi.util.tracker.BundleTracker.open(BundleTracker.java:161)
at org.apache.aries.spifly.BaseActivator.start(BaseActivator.java:103)
at org.apache.aries.spifly.dynamic.DynamicWeavingActivator.start(DynamicWeavingActivator.java:37)
at org.eclipse.osgi.internal.framework.BundleContextImpl$2.run(BundleContextImpl.java:833)
at org.eclipse.osgi.internal.framework.BundleContextImpl$2.run(BundleContextImpl.java:1)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:571)
at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:825)
at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:775)
at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:1057)
at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:387)
at org.eclipse.osgi.container.Module.doStart(Module.java:639)
at org.eclipse.osgi.container.Module.start(Module.java:498)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel$2.run(ModuleContainer.java:2074)
at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor$1$1.execute(EquinoxContainerAdaptor.java:143)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:2065)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:2007)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1968)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1884)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:341)
Caused by: java.util.zip.ZipException: zip END header not found
at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1649)
at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1657)
at java.base/java.util.zip.ZipFile$Source.(ZipFile.java:1495)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1458)
at java.base/java.util.zip.ZipFile$CleanableResource.(ZipFile.java:724)
at java.base/java.util.zip.ZipFile.(ZipFile.java:251)
at java.base/java.util.zip.ZipFile.(ZipFile.java:180)
at java.base/java.util.zip.ZipFile.(ZipFile.java:194)
at org.eclipse.osgi.framework.util.SecureAction.getZipFile(SecureAction.java:353)
... 55 more

@laomaolaile
Copy link
Contributor

截图看不到,日志里无法确认哪一步出问题了

@bigfish666
Copy link
Author

Uploading WX20240807-154235.png…

截图上传不上去。就是程序未响应的一个截图。我是在configuration 目录下查看的log。还有哪个地方能看到更细节的 Log 吗?

@fanghuaqi
Copy link
Member

这个估计是Eclipse IDE 2024.06带来的问题 eclipse-platform/eclipse.platform.swt#1252 (comment)

@bigfish666
Copy link
Author

这个估计是Eclipse IDE 2024.06带来的问题 eclipse-platform/eclipse.platform.swt#1252 (comment)

看上去这个问题是支持的老版本的问题,我现在是 win11的环境,理论上应该没有类似的问题。我现在回退到02版本是完全没有问题的。刚才又尝试了一下,升级到06版本后,重启电脑,新建一个工作区是可以使用的。但是一旦关闭了 nuclei studio 再打开,进入到刚才的工程,就会遇到之前的卡死无响应的问题。有没有可能新版本的 eclipse 需要某一个环境,而我的电脑不具备?

@fanghuaqi
Copy link
Member

有没有可能新版本的 eclipse 需要某一个环境,而我的电脑不具备?

可以比较容易的做一个验证,你可以下载 https://www.eclipse.org/downloads/packages/release/2024-06/r/eclipse-ide-cc-developers 一个单独的 Eclipse 2024-06的IDE试下 Windows x86_64

@bigfish666
Copy link
Author

有没有可能新版本的 eclipse 需要某一个环境,而我的电脑不具备?

可以比较容易的做一个验证,你可以下载 https://www.eclipse.org/downloads/packages/release/2024-06/r/eclipse-ide-cc-developers 一个单独的 Eclipse 2024-06的IDE试下 Windows x86_64

我下载了 eclipse 2024 -06测试了一下,问题也会复现。后来弹出了下面的提醒,我更新了 JDK 的版本到最新的21后,问题好像消失了。我自己测试了几次,关闭软件重开,重启再打开 nucleistuio 都没有再复现。
https://www.eclipse.org/setups/sponsor/?scope=Eclipse%20IDE%20for%20C/C%2B%2B%20Developers%20(includes%20Incubating%20components)&version=4.32.0.20240606-0749&campaign=2024-06

@fanghuaqi
Copy link
Member

我下载了 eclipse 2024 -06测试了一下,问题也会复现。后来弹出了下面的提醒,我更新了 JDK 的版本到最新的21后,问题好像消失了。我自己测试了几次,关闭软件重开,重启再打开 nucleistuio 都没有再复现。

@laomaolaile 你看看这个, 我们应该已经内建了JDK在IDE里面的,可以确认下是哪个版本

@fanghuaqi
Copy link
Member

我看了下我们里面已经有了 NucleiStudio\plugins\org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.3.v20240426-1530\jre @bigfish666

NucleiStudio.ini里面配置如下

-vm
plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.3.v20240426-1530/jre/bin
-vmargs
-Dorg.eclipse.ecf.provider.filetransfer.excludeContributors=org.eclipse.ecf.provider.filetransfer.httpclientjava

@bigfish666
Copy link
Author

我看了下我们里面已经有了 NucleiStudio\plugins\org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.3.v20240426-1530\jre @bigfish666

NucleiStudio.ini里面配置如下

-vm
plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.3.v20240426-1530/jre/bin
-vmargs
-Dorg.eclipse.ecf.provider.filetransfer.excludeContributors=org.eclipse.ecf.provider.filetransfer.httpclientjava

我看到了 plugins 里确实有,但是我下载了最新的 jdk 21.0.4+7,在系统环境变量里配置了默认的 jdk,然后把'NucleiStudio.ini`配置成本地的 jdk 路径包,解决了。我的情况可能特殊,我是在 mac 下的 parallel 环境下运行的arm 版 win11。有可能我是个例。

@laomaolaile
Copy link
Contributor

NucleiStudio中内嵌了jre 是 21.0.3版本

image

并且在NucleiStudio.ini指定vm是用的这个jre,按理说跟本机jre没有关系

image

请确认一下这个配置都是对的么?或者修改这个配置,指向您本机的jre,以确认一下确实是jre的问题

或者有没有可能是内嵌的jre在您的系统上无法运行?

@laomaolaile
Copy link
Contributor

有两个地方可以查看日志

workspace.metadata\ 下有系统运行日志

NucleiStudio\configuration\ 有插件运运的日志

这两个地方的日志都能帮助分析IDE的问题,如果方便,可以提供一下这两个地方的日志,帮助我们改进和优化,谢谢

@bigfish666
Copy link
Author

1723088155281.log
metadata.log
我上传了两个 Log。我测试了一下,把vm 后面的地址替换成默认的后,现象重新出现。卡死在 setup check 阶段。
-vm
plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.3.v20240426-1530/jre/bin

@fanghuaqi
Copy link
Member

把vm 后面的地址替换成默认的后,现象重新出现。卡死在 setup check 阶段。

能提供下你自己下载的vm是啥么,下载链接? @bigfish666

@bigfish666
Copy link
Author

把vm 后面的地址替换成默认的后,现象重新出现。卡死在 setup check 阶段。

能提供下你自己下载的vm是啥么,下载链接? @bigfish666

https://adoptium.net/.
下载链接如上,版本就是这个OpenJDK21U-jdk_x64_windows_hotspot_21.0.4_7
我尝试在软件内更新一下 ,通过之前提到的 eclipse 的那个弹窗的网页,
把 plugins 的版本更新到plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.4.v20240802-1551/jre/bin,然后 -vm
plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.4.v20240802-1551/jre/bin
替换原来我设置的本地的 jdk 21.0.4+7路径。使用新更新后的plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_21.0.4.v20240802-1551/jre/bin路径同样不会出现卡死无响应的问题。

@bigfish666
Copy link
Author

但是现在遇到一个新问题是编译完成后,使用 JLINK调试会报错。。
Error in services launch sequence
Launching command [C:\Program Files (Arm)\SEGGER/JLinkGDBServerCL.exe -if jtag -device CC2560A -endian little -speed auto -port 2331 -swoport 2332 -telnetport 2333 -vd -ir -localhostonly 1 -singlerun -strict -timeout 0 -nogui] failed.
Launching command [C:\Program Files (Arm)\SEGGER/JLinkGDBServerCL.exe -if jtag -device CC2560A -endian little -speed auto -port 2331 -swoport 2332 -telnetport 2333 -vd -ir -localhostonly 1 -singlerun -strict -timeout 0 -nogui] failed.
Cannot run program "C:\Program Files (Arm)\SEGGER/JLinkGDBServerCL.exe": Launching failed
感觉是新的 jdk 的版本还有哪不兼容,打不开 JlinkGDBServer。我回退到02版本就好了。可以正常调试。

@bigfish666 bigfish666 reopened this Aug 8, 2024
@fanghuaqi
Copy link
Member

那就暂时切到 2024.02 使用吧(toolchain你可以拷贝2024.06里面的替换到2024.02里面), 可能2024.06 Eclipse IDE升级导致对ARM处理器支持不全面。 @bigfish666

@fanghuaqi
Copy link
Member

建议还是找个正常的Windows 10/11 64bit for Intel/AMD的电脑。你这个环境我们也没有。。

当然你也可以向 https://github.com/eclipse-platform/eclipse.platform/issues 反馈下Eclipse IDE 2024.06的问题。

@bigfish666
Copy link
Author

建议还是找个正常的Windows 10/11 64bit for Intel/AMD的电脑。你这个环境我们也没有。。

当然你也可以向 https://github.com/eclipse-platform/eclipse.platform/issues 反馈下Eclipse IDE 2024.06的问题。

嗯好的,感谢支持。

@bigfish666
Copy link
Author

最后再反馈的信息,更新了新的jdk 版本后不能JLINK调试的原因是工作区还是老版本建立的,重新建立一个新的,导入工程可以正常编译调试。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants