#15157 closed defect (invalid)
Changes in "Node.java" (josm-core) broke some plugins
Reported by: | Binnette | Owned by: | team |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Plugin | Version: | latest |
Keywords: | Cc: |
Description (last modified by )
Hi, I can't compile plugin "cadastre-fr" anymore. Since michael2402 have replace "public EastNorth getEastNorth()" by "public EastNorth getEastNorth(Projecting projection)".
Can somebody make plugin cadastre compile again ?
-commit aefd26d0cc98b484cdaca37d1fc77edccac2ddc4
-michael2402 committed on 15 May
-See #13415: Add the ILatLon interface, unify handling of Nodes and Ca…
24 plugins won't compile anymore.
Thanks. Have a nice day
Attachments (0)
Change History (10)
comment:1 by , 7 years ago
Component: | Core → Plugin cadastre-fr |
---|---|
Keywords: | Core Node.Java removed |
Owner: | changed from | to
Priority: | major → normal |
comment:3 by , 7 years ago
Component: | Plugin cadastre-fr → Plugin |
---|---|
Owner: | changed from | to
comment:4 by , 7 years ago
Description: | modified (diff) |
---|
comment:5 by , 7 years ago
Resolution: | → invalid |
---|---|
Status: | new → closed |
Of course they compile. We have a continuous integration server that checks it every night:
https://josm.openstreetmap.de/jenkins/job/JOSM-Plugins/lastStableBuild/
Please make sure your SVN copy is up to date and you have compiled JOSM recently, too.
comment:6 by , 7 years ago
I double check that my svn is up to date from https://svn.openstreetmap.org/applications/editors/josm
And I confirm you that plugin cadastre do not compile, error example:
Compiling 41 source files to C:\Users\Binnette\josm\plugins\cadastre-fr\build
C:\Users\Binnette\josm\plugins\cadastre-fr\src\cadastre_fr\Address.java:349: error: method getEastNorth in class Node cannot be applied to given types;
EastNorth A = seg.a.getEastNorth();
required: Projecting
found: no arguments
reason: actual and formal argument lists differ in length
comment:7 by , 7 years ago
Here is the same error with an other plugin: utilsplugin2
compiling sources for C:\Users\Binnette\josm\dist\utilsplugin2.jar ...
Compiling 61 source files to C:\Users\Binnette\josm\plugins\utilsplugin2\build
C:\Users\Binnette\josm\plugins\utilsplugin2\src\org\openstreetmap\josm\plugins\utilsplugin2\actions\AlignWayNodesAction.java:95: error: method getEastNorth in class Node cannot be applied to given types;
double ax = nodes.get(0).getEastNorth().east();
required: Projecting
found: no arguments
reason: actual and formal argument lists differ in length
comment:8 by , 7 years ago
I can't understand how thoses plugins can compile without errors (on jenkins).
Because class Node has only 1 method getEastNorth with one argument
https://josm.openstreetmap.de/browser/josm/trunk/src/org/openstreetmap/josm/data/osm/Node.java
And those 24 plugins use this method without argument.
Can you please, try to compile from this repo:
https://josm.openstreetmap.de/browser/josm/trunk/src/org/openstreetmap/josm/data/osm/Node.java
Maybe jenkins do not build those plugins ?
comment:9 by , 7 years ago
Resolution: | invalid |
---|---|
Status: | closed → reopened |
comment:10 by , 7 years ago
Resolution: | → invalid |
---|---|
Status: | reopened → closed |
Well, triple check please, as I'm 100% sure it's working.
The method missing in your case is defined in ILatLon as a default method (new in Java 8). Michael moved it there, he didn't delete it at all:
/** * <p>Replies the projected east/north coordinates.</p> * * <p>Uses the {@link Main#getProjection() global projection} to project the lan/lon-coordinates.</p> * * @return the east north coordinates or {@code null} if #is */ default EastNorth getEastNorth() { return getEastNorth(Main.getProjection()); }
Probably you haven't built JOSM properly.
Here is the list of the 24 plugins that should not compile anymore :