Should Properties example compile in 12.0.4?

Hi. I copied src and resources from the properties project in the plug-in repository and put in my own project. It looks like the classes are a little bit out of date with the API. For example,

/Users/parrt/projects/properties/src/com/intellij/lang/properties/xml/XmlPropertiesIndex.java

references FileBasedIndex.FileTypeSpecificInputFilter but FileTypeSpecificInputFilter does not exist inside com.intellij.util.indexing.FileBasedIndex, which I believe is part of the standard API. There are lots of other compile errors. Am I doing something stupid?  Thanks for any pointers.

Also, is there a plugin with a simple manually written lexer? I see that most of them use jflex.

Ter

4 comments

Ok, I can answer my own question.  Do not listen to the getting started page that says you can configure the SDK as either the Intellij 12 ultimate edition or the community edition you pull down with git. Once I switched to be SDK to the git version, the properties example compiles.

I'm not sure what this means, but it certainly means the documentation is wrong. It also means that I can't run my plug-in that I build with the community edition in my ultimate edition for release.

Any guidance would be appreciated. Probably I'm doing something stupid.

edit: also make sure to use jdk 1.7 as the base java. the community edition needs a class from jdk 7.

Ter

0

I'm not sure which "Properties project from the plugin repository" you're referring to. The up-to-date source code of the Properties plugin is not available in any separate repository, it's part of the IntelliJ IDEA Community Edition source code.

Also note that the version you're using needs to match the version of IntelliJ IDEA. If you're using code from the master branch, it will be compatible with recent IntelliJ IDEA 13 EAP builds. If you want the version of the code compatible with IntelliJ IDEA 12.0.4, you need to check out the git branch named "123".

And no, the community edition source code does not use any classes from JDK 7.

0

I took the properties plugin from IntelliJ IDEA Community Edition source code and assumed it would work using Ultimate 12.0.4 as SDK, as indicated in plugin dev set up doc.  I found that one must use SDK of IntelliJ IDEA Community Edition *and* JDK 1.7 (doc say 1.6 optional).  

Ah. duh. sorry. Ok, i will check out 123!  As I feared, the API drifts significantly. shoot.

> And no, the community edition source code does not use any classes from JDK 7.

The use of java.lang.ReflectiveOperationException (no class found) when I run with jdk 6 contradicts this :)

Ter

0

I don't see any usages of ReflectiveOperationException in our code. Maybe this class is used by a third-party plugin you've installed?

0

Please sign in to leave a comment.