NoClassDefFoundError:

I am developing a plugin that keeps track of exactly what triggered a build (ie maybe a user hitting run, maybe subversion, maybe a timer). This is similar to the part in the UI that tells you this except I want it to be a property such as ${agent.home.dir}. I am almost done with it, but I am just getting hung up on this last little part. When I go to implement the class AgentPropertyExtension I get this error when I start up the server.

nested exception is java.lang.NoClassDefFoundError: jetbrains/buildServer/agent/AgentPropertiesExtension at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:570)

I am not seeing what I am doing wrong here. Usually this error indicated something is wrong with the classpath, but I am not seeing how I can fix this? Sorry I am still somewhat new to TeamCity, but have been programming for quite a while. Hopefully this is just a dumb mistake : )

Thanks,
Grant-

2 comments
Comment actions Permalink

Hello Grant,

    I suppose you can simply implement extension ParametersPreprocessor on the server side and provide your properties via this extension?

   Why do you need AgentPropertiesExtension at all?

   Regards,
   KIR

0
Comment actions Permalink

Hi Kirill,

Thanks for answering me back. I just tried it the way you suggested, and that worked. Again I am fairly new to teamcity, I see now what you were saying with AgentPropertiesExtension after looking through the API again. Also I just want to note for anyone else it is possible to use the groovy plug to do what my plugin is doing, but hopefully this will be just a small part of a bigger plugin that I will be working on for the next few weeks. Thanks again Kirill and sorry for posting in the general teamcity forums. I probably should have posted in the plugin community, but the turnaround is brutally slow in there and I was getting somewhat frustrated with the whole thing.

Thanks again,
Grant

0

Please sign in to leave a comment.