Hi, All The same issue in eclipse is driving me nuts while I was trying to upgrade my plugin code dependencies to latest LTS.
Removing the annotation *@WithBridgeMethods *just works like a charm, thanks However, I would like to share a little more about how to recompile the *jenkins-core-xxx.jar*. 1. download the *source.zip* from https://github.com/jenkinsci/jenkins(I mean the root of the project, not just core folder since *Jenkins CLI*module is required for *Jenkins core* from the this recompilation build ), pick up any commit, branch as you like 2. unzip this source.zip to folder *jenkins-xxx*, (wherever as you like) 3. replace *@WithBridgeMethods\(.*\) *with *// patching for debug* to* jenkins-xxx/core/src/**/*.java* 4. run *mvn package -Dmaven.test.skip=true *(you should get your maven working) 5. we should only care about the *jenkins-core-xxx.jar* is finally recompiled though some error may occur on other modules 6. done Help this could help. Best Regard, Ace Han On Saturday, November 16, 2013 8:48:27 PM UTC+8, Vincent Latombe wrote: > > I could confirm it is definitely the bridge method injector which is > causing the issue. > > In Queue.Item, there is the following getter annotated > > @WithBridgeMethods(Future.class) > public QueueTaskFuture<Executable> getFuture() { return future; } > > Removing the annotation then recompiling core fixes the issue for this > class. > > Also, depending on a jenkins-core that is in the workspace workarounds the > issue (because then the bridge method injector isn't called by JDT) > > Given the fix you mentioned in 1.9, I doubt it will change anything. > > Vincent > > > 2013/11/16 Christoph Kutzinski <[email protected] <javascript:>> > >> Makes sense. >> Maybe we're missing this bug fix which comes with >> bridge-method-annotation 1.9 >> >> https://github.com/infradna/bridge-method-injector/commit/ >> ea528faf1f92724cc5db036116bae80a234de20d >> >> Am 16.11.2013 10:09, schrieb Vincent Latombe: >> >>> Problem appeared in core 1.520. Looking at the changes that happened for >>> this release, >>> I see an update of com.infradna.tool:bridge-method-annotation from 1.4 >>> to 1.8 >>> >>> Maybe this is generating some bytecode that is not understood correctly >>> by the JDT, so it fails to index the corresponding class. >>> >>> Vincent >>> >>> >>> 2013/11/16 Vincent Latombe <[email protected] <javascript:> >>> <mailto:[email protected] <javascript:>>> >>> >>> >>> Hi, >>> >>> I have exactly the same issue. Compiling in command line works, >>> however in Eclipse, some inner classes cannot be resolved (despite >>> being able to browse them in the classpath of the eclipse project). >>> >>> Eclipse is unable to resolve these 3 classes : >>> - hudson.model.AbstractProject.AbstractProjectDescriptor >>> - hudson.model.Queue.Task >>> - hudson.model.Queue.Item >>> >>> I'm trying to isolate the problem, so far I found it depends on the >>> core version, and the problem appeared between 1.517 and 1.524. >>> >>> Vincent >>> >>> Vincent >>> >>> >>> 2013/11/16 Christoph Kutzinski <[email protected] <javascript:> <mailto: >>> [email protected] <javascript:>>> >>> >>> >>> No Maven Problems, only Java problems: >>> >>> >>> Description Resource Path Location Type >>> Cannot make a static reference to the non-static method save() >>> from the type >>> AbstractProject<MavenModuleSet,MavenModuleSetBuild> >>> MavenModuleSet.java /maven-plugin/src/main/java/hudson/maven >>> line 1320 Java Problem >>> AbstractProjectDescriptor cannot be resolved to a type >>> MavenModuleSet.java /maven-plugin/src/main/java/hudson/maven >>> line 1259 Java Problem >>> Cannot make a static reference to the non-static method save() >>> from the type >>> AbstractProject<MavenModuleSet,MavenModuleSetBuild> >>> MavenModuleSet.java /maven-plugin/src/main/java/hudson/maven >>> line 1278 Java Problem >>> The method alignToBaseDirectory(File) of type new >>> ExpressionEvaluator(){} must override a superclass method >>> MojoInfoBuilder.java /maven-plugin/src/test/java/hudson/maven >>> line 81 Java Problem >>> Cannot make a static reference to the non-static method save() >>> from the type >>> AbstractProject<MavenModuleSet,MavenModuleSetBuild> >>> MavenModuleSet.java /maven-plugin/src/main/java/hudson/maven >>> line 1290 Java Problem >>> Bound mismatch: The generic method getDescriptorByType(Class<T>) >>> of type Jenkins is not applicable for the arguments >>> (Class<MavenModuleSet.DescriptorImpl>). The inferred type >>> MavenModuleSet.DescriptorImpl is not a valid substitute for the >>> bounded parameter <T extends Descriptor> MavenOptsTest.java >>> /maven-plugin/src/test/java/hudson/maven line 20 Java Problem >>> The method annotate(ConsoleNote) of type >>> SurefireArchiverUnitTest.NullBuildListener must override a >>> superclass method SurefireArchiverUnitTest.java >>> /maven-plugin/src/test/java/hudson/maven/reporters line 303 >>> Java Problem >>> The method apply(String) of type new Function<String,File>(){} >>> must override a superclass method TestMojo.java >>> /maven-plugin/src/main/java/hudson/maven/reporters line 165 >>> Java Problem >>> Queue.Item cannot be resolved to a type MavenModuleSet.java >>> /maven-plugin/src/main/java/hudson/maven line 1104 Java >>> Problem >>> Queue.Item cannot be resolved to a type MavenModuleSet.java >>> /maven-plugin/src/main/java/hudson/maven line 1108 Java >>> Problem >>> Queue.Item cannot be resolved to a type MavenModuleSet.java >>> /maven-plugin/src/main/java/hudson/maven line 1097 Java >>> Problem >>> Cannot cast from Descriptor to MavenModuleSet.DescriptorImpl >>> MavenModuleSet.java /maven-plugin/src/main/java/hudson/maven >>> line 1219 Java Problem >>> The method apply(File) of type new Predicate<File>(){} must >>> override a superclass method SurefireArchiver.java >>> /maven-plugin/src/main/java/hudson/maven/reporters line 140 >>> Java Problem >>> AbstractProjectDescriptor cannot be resolved to a type >>> MavenModuleSet.java /maven-plugin/src/main/java/hudson/maven >>> line 1230 Java Problem >>> The method apply(File) of type new Predicate<File>(){} must >>> override a superclass method SurefireArchiver.java >>> /maven-plugin/src/main/java/hudson/maven/reporters line 268 >>> Java Problem >>> Queue.Item cannot be resolved to a type MavenModuleSet.java >>> /maven-plugin/src/main/java/hudson/maven line 1109 Java >>> Problem >>> Queue.Item cannot be resolved to a type MavenModuleSet.java >>> /maven-plugin/src/main/java/hudson/maven line 1109 Java >>> Problem >>> The method apply(String) of type new Function<String,File>(){} >>> must override a superclass method SurefireArchiver.java >>> /maven-plugin/src/main/java/hudson/maven/reporters line 282 >>> Java Problem >>> Queue.Item cannot be resolved to a type MavenModuleSet.java >>> /maven-plugin/src/main/java/hudson/maven line 1110 Java >>> Problem >>> >>> ... >>> >>> >>> Am 15.11.2013 22:15, schrieb Marcelo: >>> >>>> Kutzi, in the category "Maven Problems" of the view "Markers" >>>> inside eclipse, you see any error? >>>> >>>> >>>> On Fri, Nov 15, 2013 at 5:55 PM, Baptiste Mathus >>>> <[email protected] <javascript:> >>>> <mailto:[email protected]<javascript:>>> >>>> wrote: >>>> >>>> Hi, First thing I would ask is: does it build on the CLI >>>> outside Eclipse? That'll be a first step to see if this is >>>> likely a Maven issue or more an Eclipse or even a jenkins >>>> code one. >>>> My 2 cents >>>> >>>> >>>> 2013/11/15 Christoph Kutzinski <[email protected] <javascript:> >>>> <mailto:[email protected] <javascript:>>> >>>> >>>> >>>> Hi, >>>> >>>> I had several problems with building >>>> Jenkins/maven-plugin in the past, but the errors I'm >>>> getting now are especial nasty: >>>> Eclipse e.g. complains that it cannot find >>>> hudson.model.Queue.Item (in MavenModuleSet) and >>>> several other compile errors. >>>> I checked the the Jenkins core jar is intact (building >>>> with mvn works) and no amount of refreshing in Eclipse >>>> and the usual other tricks to get it working again got >>>> me anywhere. >>>> >>>> Did anyone have similar problems and maybe a solution? >>>> Eclipse Kepler 4.3.1, M2e 1.4.0 >>>> >>>> - >>>> Kutzi >>>> >>>> -- >>>> You received this message because you are subscribed >>>> to the Google Groups "Jenkins Developers" group. >>>> To unsubscribe from this group and stop receiving >>>> emails from it, send an email to >>>> [email protected] <javascript:> >>>> >>>> <mailto:jenkinsci-dev%[email protected]<javascript:> >>>> >. >>>> >>>> For more options, visit >>>> https://groups.google.com/groups/opt_out. >>>> >>>> >>>> >>>> >>>> -- >>>> Baptiste <Batmat> MATHUS - http://batmat.net >>>> Sauvez un arbre, >>>> Mangez un castor ! >>>> -- >>>> You received this message because you are subscribed to >>>> the Google Groups "Jenkins Developers" group. >>>> To unsubscribe from this group and stop receiving emails >>>> from it, send an email to >>>> [email protected] <javascript:> >>>> >>>> <mailto:jenkinsci-dev%[email protected]<javascript:> >>>> >. >>>> >>>> For more options, visit >>>> https://groups.google.com/groups/opt_out. >>>> >>>> >>>> -- >>>> You received this message because you are subscribed to the >>>> Google Groups "Jenkins Developers" group. >>>> To unsubscribe from this group and stop receiving emails from >>>> it, send an email to >>>> [email protected] <javascript:> >>>> <mailto:[email protected]<javascript:> >>>> >. >>>> >>>> For more options, visit https://groups.google.com/ >>>> groups/opt_out. >>>> >>> >>> -- >>> You received this message because you are subscribed to the >>> Google Groups "Jenkins Developers" group. >>> To unsubscribe from this group and stop receiving emails from >>> it, send an email to [email protected]<javascript:> >>> <mailto:jenkinsci-dev%[email protected]<javascript:> >>> >. >>> >>> For more options, visit https://groups.google.com/groups/opt_out >>> . >>> >>> >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Jenkins Developers" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected] <javascript:>. >>> For more options, visit https://groups.google.com/groups/opt_out. >>> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Jenkins Developers" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/groups/opt_out. >> > > -- You received this message because you are subscribed to the Google Groups "Jenkins Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
