need access to com.intellij.ide.util.MemberChooser from plugin
Hi, I want to develop a dialog to allow the user to choose some javadoc annotations in methods in a structured way, so I have realized that the class
com.intellij.ide.util.MemberChooser
Provides this functionality for structured views...
Well, I have followed instructions at:
http://www.jetbrains.org/display/IJOS/Writing+Plug-ins
But in my plugin code I haven´t access to that class, could someone guide me the right way to be able to reuse this code? I heard something about a closed API here: http://devnet.jetbrains.net/message/5179502#5179502
If that´s true, does it mean I can´t reuse that classes?
Please sign in to leave a comment.
If you couldn't access your chooser in plugin code - than it declared not in your plugin code...Am I right? If so, try to put your class into plugin code.
If you couldn't access to com.intellij.ide.util.MemberChooser add idea.jar(in lib directory of your sdk) to sdk classpath. I don't know why, but automatically it not added.
I don't think so, that thread was in 2007 - IDEA was not opensourced.
idea.jar added and now I can use that class, thank you... But I wonder why creating an idea sdk doesn't add that jar by default? maybe because of some kind of licensing issue? I don't know anything about this topic, but I thought that maybe accessing that API could tie my plugin development to Intellij IDEA commercial version, actually I don't care about it, because my plugin's target audience have the commercial version... but some clarification about it would be welcome.
Thank you again Vladimir.
Theory: everything in idea.jar is a part of IDEA internal api and subject to change without warning. You should only use the open API (the idea SDK) that guarantees some stability across idea versions.
Practice: the open API is lacking in functionality, so most of the time access to IDEA internal api is mandatory resulting in adding idea.jar to the SDK classpath.
So that seems to be the problem, well, I managed to add idea.jar to the sdk classpath, and now everything is working quite good.
Thank you for your help.