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

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 : )


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?


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,


Please sign in to leave a comment.