Modify

Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#22146 closed defect (fixed)

NoSuchMethodError when using updated utilsplugin2

Reported by: GerdP Owned by: team
Priority: major Milestone:
Component: Plugin utilsplugin2 Version:
Keywords: template_report Cc: tailor.smock, stoecker

Description

What steps will reproduce the problem?

  1. Start JOSM 18463
  2. Update plugin list
  3. Update plugins
  4. Stop/Start JOSM
  5. Try to use e.g. Circle Arc to reproduce problem in #20189

What is the expected result?

some nodes added to way

What happens instead?

Crash

Please provide any additional information below. Attach a screenshot if possible.

Probably a problem with the main version setting in the last dist?

Revision:18463
Build-Date:2022-05-30 10:23:53

Identification: JOSM/1.5 (18463 en) Windows 10 64-Bit
OS Build number: Windows 10 Home 2009 (19044)
Memory Usage: 268 MB / 1972 MB (91 MB allocated, but free)
Java version: 17.0.3+7-LTS, Azul Systems, Inc., OpenJDK 64-Bit Server VM
Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Screen: \Display0 1920×1080 (scaling 1.00×1.00)
Maximum Screen Size: 1920×1080
Best cursor sizes: 16×16→32×32, 32×32→32×32
System property file.encoding: Cp1252
System property sun.jnu.encoding: Cp1252
Locale info: en_DE
Numbers with default locale: 1234567890 -> 1234567890
VM arguments: [-Djpackage.app-version=1.5.18463, --add-modules=java.scripting,java.sql,javafx.controls,javafx.media,javafx.swing,javafx.web, --add-exports=java.base/sun.security.action=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.plugins.jpeg=ALL-UNNAMED, --add-exports=java.desktop/com.sun.imageio.spi=ALL-UNNAMED, --add-opens=java.base/java.lang=ALL-UNNAMED, --add-opens=java.base/java.nio=ALL-UNNAMED, --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED, --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED, --add-opens=java.desktop/javax.imageio.spi=ALL-UNNAMED, --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED, --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED, -Djpackage.app-path=%UserProfile%\AppData\Local\JOSM\HWConsole.exe]
Dataset consistency test: No problems found

Plugins:
+ apache-commons (35924)
+ buildings_tools (35978)
+ contourmerge (v0.1.9)
+ ejml (35924)
+ geotools (35959)
+ imagery-xml-bounds (35976)
+ jackson (35958)
+ jaxb (35952)
+ jts (35976)
+ o5m (35893)
+ opendata (35910)
+ pbf (35978)
+ poly (35976)
+ reltoolbox (35976)
+ reverter (35980)
+ undelete (35893)
+ utilsplugin2 (35978)

Validator rules:
+ c:\josm\core\resources\data\validator\geometry.mapcss
+ c:\josm\core\resources\data\validator\unnecessary.mapcss
+ d:\java_tools\JOSM\mygeometry.mapcss

Last errors/warnings:
- 00000.532 W: extended font config - overriding 'filename.Myanmar_Text=mmrtext.ttf' with 'MMRTEXT.TTF'
- 00000.534 W: extended font config - overriding 'filename.Mongolian_Baiti=monbaiti.ttf' with 'MONBAITI.TTF'
- 00000.923 E: java.security.KeyStoreException: Windows-ROOT not found. Cause: java.security.NoSuchAlgorithmException: Windows-ROOT KeyStore not available
- 00026.135 E: Handled by bug report queue: java.lang.NoSuchMethodError: 'double org.openstreetmap.josm.data.coor.ILatLon.greatCircleDistance(org.openstreetmap.josm.data.coor.ILatLon)'
- 00065.919 E: Handled by bug report queue: java.lang.NoSuchMethodError: 'double org.openstreetmap.josm.data.coor.ILatLon.greatCircleDistance(org.openstreetmap.josm.data.coor.ILatLon)'



=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (22) of main
java.lang.NoSuchMethodError: 'double org.openstreetmap.josm.data.coor.ILatLon.greatCircleDistance(org.openstreetmap.josm.data.coor.ILatLon)'
	at org.openstreetmap.josm.plugins.utilsplugin2.curves.CircleArcMaker.doCircleArc(CircleArcMaker.java:113)
	at org.openstreetmap.josm.plugins.utilsplugin2.curves.CurveAction.actionPerformed(CurveAction.java:51)
	at java.desktop/javax.swing.SwingUtilities.notifyAction(Unknown Source)
	at java.desktop/javax.swing.JComponent.processKeyBinding(Unknown Source)
	at java.desktop/javax.swing.KeyboardManager.fireBinding(Unknown Source)
	at java.desktop/javax.swing.KeyboardManager.fireKeyboardAction(Unknown Source)
	at java.desktop/javax.swing.JComponent.processKeyBindingsForAllComponents(Unknown Source)
	at java.desktop/javax.swing.JComponent.processKeyBindings(Unknown Source)
	at java.desktop/javax.swing.JComponent.processKeyEvent(Unknown Source)
	at java.desktop/java.awt.Component.processEvent(Unknown Source)
	at java.desktop/java.awt.Container.processEvent(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(Unknown Source)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown Source)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source)
	at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)

Attachments (0)

Change History (17)

comment:1 by taylor.smock, 3 years ago

Resolution: fixed
Status: newclosed

In 35986/osm:

Fix #22146: build.xml for utilsplugin2 was not updated (part 1)

comment:2 by taylor.smock, 3 years ago

In 35987/osm:

See #22146 (dist): build.xml for utilsplugin2 was not updated (part 1)

comment:3 by taylor.smock, 3 years ago

In 35988/osm:

See #22146, #22115: build.xml for utilsplugin2 was not updated (part 2)

This was part of r35978/osm (LatLon -> ILatLon).

comment:4 by taylor.smock, 3 years ago

In 35989/osm:

See #22146, #22115 (dist): build.xml for utilsplugin2 was not updated (part 2)

This was part of r35978/osm (LatLon -> ILatLon).

comment:5 by GerdP, 3 years ago

Hmm, seems that the file site-josm.openstreetmap.de-_pluginicons.txt is not updated yet or something went wrong. I still get the bad version when I update (I reverted to a backup before), so the problem is still reproducable.
Edit: Should the changes have triggered a Jenkins job JOSM-plugins?

Last edited 3 years ago by GerdP (previous) (diff)

comment:6 by taylor.smock, 3 years ago

It should have updated. I wonder if I had to ensure that the old version was up for some unspecified amount of time.

I'll revert the dist. The only real change was fixing some deprecation warnings, which didn't actually fix any bugs.

comment:7 by taylor.smock, 3 years ago

In 35990/osm:

See #22146 (dist): build.xml for utilsplugin2 was not updated (revert to known good)

For whatever reason, the updated dist in r35987/osm either was not propagating
or had references to new methods.

comment:8 by GerdP, 3 years ago

Cc: stoecker added

We could also trigger the Jenkins job manually, but something has to be corrected...

in reply to:  8 comment:9 by stoecker, 3 years ago

Replying to GerdP:

We could also trigger the Jenkins job manually, but something has to be corrected...

I don't know what I should do here. What's the issue?

comment:10 by GerdP, 3 years ago

I am not sure what job is updating the file which JOSM downloads as site-josm.openstreetmap.de-_pluginicons.txt. Several hours after the update of the plugin jar the file was not updated. I think we deliver have a utilsplugin2.jar that doesn't match the sources.

in reply to:  10 comment:11 by stoecker, 3 years ago

Replying to GerdP:

I am not sure what job is updating the file which JOSM downloads as site-josm.openstreetmap.de-_pluginicons.txt. Several hours after the update of the plugin jar the file was not updated. I think we deliver have a utilsplugin2.jar that doesn't match the sources.

I checked the current state and it matches.

comment:12 by GerdP, 3 years ago

What action triggers the update of the file?

in reply to:  12 comment:13 by stoecker, 3 years ago

Replying to GerdP:

What action triggers the update of the file?

SVN changes.

comment:14 by GerdP, 3 years ago

That didn't happen, the svn change didn't trigger a Jenkins job.

in reply to:  14 ; comment:15 by stoecker, 3 years ago

Replying to GerdP:

That didn't happen, the svn change didn't trigger a Jenkins job.

That is no jenkins job. The file gets updated by a cron job which handles a lot of the periodical background tasks.

comment:16 by GerdP, 3 years ago

OK, unfortunately I cannot say for sure what happened, but JOSM 18463 downloaded the wrong plugin jar hours after tailor.smock closed the ticket as fixed.
I've just tried to reproduce. I restored the JOSM directory to a backup from 2022-05-21, updated the plugin list and the clicked update plugins. JOSM reports that all plugins are up to date, so it keeps the utilsplugin2.jar from 2022-05-24. This is OK because it matches the binary in the dist directory, but I think that binary doesn't match the current sources.
Just to mention: I am recovering from Covid-19 and maybe cannot think straigt yet.
Tailor should be the one to decide what's good or bad.

in reply to:  15 comment:17 by taylor.smock, 3 years ago

Replying to stoecker:

That is no jenkins job. The file gets updated by a cron job which handles a lot of the periodical background tasks.

Good to know. I'll assume that the cron job is run daily, and probably more frequently (possibly hourly), but not minutely.

Replying to GerdP:

I've just tried to reproduce. I restored the JOSM directory to a backup from 2022-05-21, updated the plugin list and the clicked update plugins. JOSM reports that all plugins are up to date, so it keeps the utilsplugin2.jar from 2022-05-24. This is OK because it matches the binary in the dist directory, but I think that binary doesn't match the current sources.

That is correct. It does not match the current sources. At this time, I don't think I'll update the dist directory until after the next JOSM stable (assuming it is this upcoming weekend). It should be fine, but I'd rather not do a mass update fairly close to a stable release, as we update plugins automatically (by default) on JOSM update. (Note: if we are not doing a release this weekend, then I don't mind updating the dist folder tomorrow).

Just to mention: I am recovering from Covid-19 and maybe cannot think straigt yet.

Get better soon (I'm sorry to hear this).

Tailor should be the one to decide what's good or bad.

Taylor ducks and hides

From comment:2, https://josm.openstreetmap.de/export/35987/osm/applications/editors/josm/dist/utilsplugin2.jar only has references to ILatLon in LatLonDialog (see r35476/osm for when it was last touched). So I didn't wait long enough for the cron job to get it. :(

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain team.
as The resolution will be set.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.