Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

SWTException when opening a context menu while the terminal feature is installed

Đang mở
#4,264 2 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
53/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Ít trao đổi
Công nghệ
java
Lĩnh vực
desktop

Hướng nghiên cứu

The stack trace points to ExternalExecutablesUtils.loadImage and DynamicContributionItems.getContributionItems in the terminal feature. Start by reading those entry points and checking how images for the dynamic menu are loaded; reproduce by opening the context menu or hovering over “Show in Local Terminal” on Windows. Done when those actions no longer throw the SWTException and the terminal menu remains usable.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

bug

When opening a context menu in package explorer or context explorer (can be on a project, package, or file), an exception is thrown. The same exception is thrown when "Show in Local Terminal" is hovered over and the sub-menu appears:

Dynamic menu contribution 'DynamicContributionItems(id=org.eclipse.terminal.connector.local.LocalLauncherDynamicContributionItems, visible=true)' threw an unexpected exception
org.eclipse.swt.SWTException: Unsupported or unrecognized format
	at org.eclipse.swt.SWT.error(SWT.java:4934)
	at org.eclipse.swt.SWT.error(SWT.java:4849)
	at org.eclipse.swt.SWT.error(SWT.java:4820)
	at org.eclipse.swt.internal.image.FileFormat.lambda$11(FileFormat.java:153)
	at java.base/java.util.Optional.orElseGet(Optional.java:368)
	at org.eclipse.swt.internal.image.FileFormat.load(FileFormat.java:152)
	at org.eclipse.swt.internal.NativeImageLoader.load(NativeImageLoader.java:26)
	at org.eclipse.swt.graphics.ImageLoader.loadByZoom(ImageLoader.java:161)
	at org.eclipse.swt.graphics.ImageLoader.loadByZoom(ImageLoader.java:205)
	at org.eclipse.swt.graphics.ImageLoader.load(ImageLoader.java:198)
	at org.eclipse.terminal.view.ui.internal.local.showin.ExternalExecutablesUtils.loadImage(ExternalExecutablesUtils.java:38)
	at org.eclipse.terminal.view.ui.internal.local.showin.DynamicContributionItems.getContributionItems(DynamicContributionItems.java:76)
	at org.eclipse.ui.actions.CompoundContributionItem.getContributionItemsToFill(CompoundContributionItem.java:83)
	at org.eclipse.ui.actions.CompoundContributionItem.fill(CompoundContributionItem.java:57)
	at org.eclipse.ui.internal.menus.DynamicMenuContributionItem.fill(DynamicMenuContributionItem.java:194)
	at org.eclipse.jface.action.MenuManager.doItemFill(MenuManager.java:727)
	at org.eclipse.jface.action.MenuManager.update(MenuManager.java:804)
	at org.eclipse.jface.action.MenuManager.handleAboutToShow(MenuManager.java:468)
	at org.eclipse.jface.action.MenuManager$2.menuShown(MenuManager.java:493)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:297)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:91)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4363)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1217)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1241)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1222)
	at org.eclipse.swt.widgets.Control.WM_INITMENUPOPUP(Control.java:5361)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4993)
	at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:336)
	at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1490)
	at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2446)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:5131)
	at org.eclipse.swt.internal.win32.OS.TrackPopupMenu(Native Method)
	at org.eclipse.swt.widgets.Menu._setVisible(Menu.java:236)
	at org.eclipse.swt.widgets.Display.runPopups(Display.java:4202)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3743)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1160)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1051)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153)
	at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:680)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:583)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:173)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:193)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:219)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:149)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:115)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:467)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:298)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
	at java.base/java.lang.reflect.Method.invoke(Method.java:565)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:615)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:563)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1415)

The terminal icon does show.

Eclipse Platform 4.41.0.I20260820-2300
Terminal Feature 1.0.400.v20260812-1204
Win 10

Community

  • I understand reporting an issue to this OSS project does not mandate anyone to fix it. Other contributors may consider the issue, or not, at their own convenience. The most efficient way to get it fixed is that I fix it myself and contribute it back as a good quality patch to the project.
Ngôn ngữ chính
Java
Star
124
Fork
269
Merge trung bình
1 ngày 19 giờ
Pull request đã merge (30 ngày)
63

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của eclipse-platform/eclipse.platform.ui

Tất cả issue của eclipse-platform/eclipse.platform.ui

Issue tương tự

Thêm issue về Java

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.