2008 rmi compiler behavior...

The rmi compiler in 2008 seems to be scanning the entire output directory every time. Am I the only one seeing this or is this the current implementation?

Right now it's not a big deal for me since I have rmi external tool plus ant files that do the work for me, but I guess as the EAP progresses, the rmi compiler behavior will improve. I like the feature though. Will the ant file generated from the project automatically add the rmic tasks if one is needed? I have not tested this.

14 comments
Comment actions Permalink

What is the problem with scanning?

--
Best regards,
Eugene Zhuravlev
Software Developer
JetBrains Inc.
http://www.jetbrains.com
"Develop with pleasure!"

"Vinay Moharil" <vmohar98@yahoo.com> wrote in message news:14150896.1081736433532.JavaMail.itn@is.intellij.net...

The rmi compiler in 2008 seems to be scanning the entire output directory every time. Am I the only one seeing this or is this the

current implementation?
>

Right now it's not a big deal for me since I have rmi external tool plus ant files that do the work for me, but I guess as the EAP

progresses, the rmi compiler behavior will improve. I like the feature though. Will the ant file generated from the project
automatically add the rmic tasks if one is needed? I have not tested this.


0
Comment actions Permalink

It takes about 75-80 seconds on my 1.2Ghz, 512mb ram, nothing but intellij machine. I have more than 8000 classes in this project. Plus it seems to be getting invoked on any ctrlshiftf9 (not just the class the implements Remote).

rmic external tool or ant task to which I pass the current class takes less than 3 seconds.

0
Comment actions Permalink

Hmm... Unfortunately scanning is required in order to find the files that are rmic-compilable....

--
Best regards,
Eugene Zhuravlev
Software Developer
JetBrains Inc.
http://www.jetbrains.com
"Develop with pleasure!"

"Vinay Moharil" <vmohar98@yahoo.com> wrote in message news:33222691.1081785856294.JavaMail.itn@is.intellij.net...

It takes about 75-80 seconds on my 1.2Ghz, 512mb ram, nothing but intellij machine. I have more than 8000 classes in this project.

Plus it seems to be getting invoked on any ctrlshiftf9 (not just the class the implements Remote).
>

rmic external tool or ant task to which I pass the current class takes less than 3 seconds.



0
Comment actions Permalink

can we get an option to manually run rmic on a select file only. for example, we can now right-click on one file and choose compile on the popup menu.

0
Comment actions Permalink

but can we do some sort of intelligent "book keeping" to "improve the rmic behavior" and performance.

0
Comment actions Permalink

I just have a small external tool configured to do this.

]]>

0
Comment actions Permalink

Currently I can't see any ways to find such classes in a correct way.
We'll think about this.

--
Best regards,
Eugene Zhuravlev
Software Developer
JetBrains Inc.
http://www.jetbrains.com
"Develop with pleasure!"

"Vinay Moharil" <vmohar98@yahoo.com> wrote in message news:20982950.1081799104276.JavaMail.itn@is.intellij.net...

but can we do some sort of intelligent "book keeping" to "improve the rmic behavior" and performance.



0
Comment actions Permalink

Other development tool vendor have not had any problems with this. I guess they register classes that implement the Remote interface on the fly or during compilation, and only invoke the rmic on those.

Best regards,
Lars Ugleberg

0
Comment actions Permalink

What if the class has been compiled with external tool or ant?

--
Best regards,
Eugene Zhuravlev
Software Developer
JetBrains Inc.
http://www.jetbrains.com
"Develop with pleasure!"

"Lars Ugleberg" <lars.ugleberg@essnet.se> wrote in message news:8530212.1081835582142.JavaMail.itn@is.intellij.net...

Other development tool vendor have not had any problems with this. I guess they register classes that implement the Remote

interface on the fly or during compilation, and only invoke the rmic on those.
>

Best regards,
Lars Ugleberg



0
Comment actions Permalink

I was under the impression that IntelliJ IDEA parses all source files that lie in the specified path(s). I figured that this background parsing could also watch out for classes that implement Remote, and flag them (or immediately initiate) background rmic.

I haven’t had time to look at this new feature, so I’ll just humbly remind you that the project (or rather module) settings need to allow the user to choose which type of skeletons should be generated (1.1 or 1.2 compatible).

Best regards,
Lars Ugleberg

0
Comment actions Permalink

I was under the impression that IntelliJ IDEA parses all source files that lie in the specified path(s). I figured that this

background parsing could also watch out for classes that implement Remote, and flag them (or immediately initiate) background rmic.

Yep it does, but only the files that were compiled by java compiler that was invoked by IDEA. The class files that were generate by
an ant task set up to be run before/after compilation, are not processed. The only way to pick them is to scan the output directory.

I haven?t had time to look at this new feature, so I?ll just humbly remind you that the project (or rather module) settings need

to allow the user to choose which type of skeletons should be generated (1.1 or 1.2 compatible).

You can achieve this by specifying "-v1.1" or "-v1.2" in additional rmic settings.



--
Best regards,
Eugene Zhuravlev
Software Developer
JetBrains Inc.
http://www.jetbrains.com
"Develop with pleasure!"


0
Comment actions Permalink

Could you not have an option that controls whether or not to check output directory (or to assume only idea is compiling these classes).

Then for simple cases (Idea only compiles) you could considerably speed up the rmi compilation. For more complex cases, the user would have to take the hit.

0
Comment actions Permalink


In my case, if we are compiling classes outside IDEA, we also do the rmic if required. I wouldn't expect IDEA to scan my output directory. That should be an option, off by default imo.

0
Comment actions Permalink

Well, seems like this can be the solution, just wanted to know whether it would be ok for those who use RMI.
Thanks all for the comments!

--
Best regards,
Eugene Zhuravlev
Software Developer
JetBrains Inc.
http://www.jetbrains.com
"Develop with pleasure!"

"Alex" <no_mail@jetbrains.com> wrote in message news:2107616.1081884818148.JavaMail.itn@is.intellij.net...
>

In my case, if we are compiling classes outside IDEA, we also do the rmic if required. I wouldn't expect IDEA to scan my output

directory. That should be an option, off by default imo.


0

Please sign in to leave a comment.