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.

Reply via email to