Home » Language IDEs » AspectJ » Multi-project compilation life cycle?
Multi-project compilation life cycle? [message #43863] |
Wed, 03 November 2004 19:02 |
Eclipse User |
|
|
|
Originally posted by: srobertson.nvisia.com
Thanks again for the help Matt.
I was able to get this mostly working with AJDT 1.1.4 on WSAD 5.1.2 and
the AspectJ 2.0 compiler, using the approach you suggested.
I have a couple of questions though. The aspect project compiles to an
aspect jar, which the dependent projects weave into their own classes
during compilation. If you make changes to the aspects, is it a separate
step to tell the other projects to recompile/reweave as well? What
confused me was that I could compile the aspects fine, but when I rebuilt
the dependent projects, the aspect project would show an error on all
aspects saying that they hadn't been compiled with the "reweavable"
option. I tried passing -Xreweavable in the "non-standard compiler
options" preference, but it didn't make a difference. Anyway, I was
surprised that the aspects themselves were being rebuilt upon rebuilding
dependent projects.
Also, I wasn't able to get the visualizer to work. I know the aspects are
being applied, because I can see their results when I run in the WTE. The
visualizer just doesn't notice they're applied. In the aspectJ
preferences the "build structure model" box is selected in all projects.
I didn't see any seemingly-relevant errors in .metadata/log, nor any other
indication that things were failing. Not being able to use the visualizer
makes things difficult (which is, I'm sure, why your team built one :-).
I realize you're focusing all of your efforts into making the ajdt 1.2
series solid. Will there be any more enhancements to an environment for
Eclipse 2.1-based IDEs?
Thanks again,
Stu
Matt Chapman wrote:
> Stu, I think the approach I suggested does what you are looking for, let
> me try to expand on it a bit further. With the aspect project, you go to
> its project properties, AspectJ tab, and put in say myaspectlib.jar in the
> "output jar" field. From now on, whenever that project is built, the
> generated classes go only into this jar file (and not into the project's
> bin directory).
> Then for the projects that want to make use of this aspect library, make
> them AspectJ projects, and go to project properties, AspectJ AspectPath
> tab (as in AJDT 1.1.11 onwards), and add the myaspectlib.jar from the
> aspect project. Now whenever these projects are built, they are built with
> the AspectJ compiler, which will compile the classes in the project, and
> weave in the aspects from the aspect path, putting the output in the
> project's output directory as normal.
>> Anyway, not sure I've stated the question very clearly. In general, my
>> impression is that the documentation and examples on the ajdt site are
>> geared towards a single Eclipse project. This seems like the simple
>> case to me, and personally I haven't seen this often "in the field,"
>> rightly or wrongly.
> I agree completely, much of our focus is on getting newcomers started. I
> think we still need to continue that, but there is a rapidly growing
> number of people going beyond these first steps into more real world
> scenarios, and we certainly plan to address this area more in the near
> future. You might also like to consider writing up your own experiences so
> that others can learn from them.
> Regards,
> Matt.
|
|
|
Forgot to attach the log message... [message #43893 is a reply to message #43863] |
Wed, 03 November 2004 19:12 |
Eclipse User |
|
|
|
Originally posted by: srobertson.nvisia.com
Oops... Meant to include this. Again, I'm not sure if it's relevant, but
just in case...
!ENTRY org.eclipse.ajdt.ui 4 0 Nov 02, 2004 19:23:42.187
!MESSAGE NullPointerException thrown: null
!STACK 0
java.lang.NullPointerException
at java.lang.Throwable.<init>(Throwable.java)
at java.lang.Throwable.<init>(Throwable.java)
at java.lang.NullPointerException.<init>(NullPointerException.java)
at
org.aspectj.ajde.internal.CompilerAdapter.compile(CompilerAd apter.java:84)
at
org.aspectj.ajde.internal.AspectJBuildManager$CompilerThread .run(AspectJBuildManager.java:165)
stu robertson wrote:
> Thanks again for the help Matt.
> I was able to get this mostly working with AJDT 1.1.4 on WSAD 5.1.2 and
> the AspectJ 2.0 compiler, using the approach you suggested.
> I have a couple of questions though. The aspect project compiles to an
> aspect jar, which the dependent projects weave into their own classes
> during compilation. If you make changes to the aspects, is it a separate
> step to tell the other projects to recompile/reweave as well? What
> confused me was that I could compile the aspects fine, but when I rebuilt
> the dependent projects, the aspect project would show an error on all
> aspects saying that they hadn't been compiled with the "reweavable"
> option. I tried passing -Xreweavable in the "non-standard compiler
> options" preference, but it didn't make a difference. Anyway, I was
> surprised that the aspects themselves were being rebuilt upon rebuilding
> dependent projects.
> Also, I wasn't able to get the visualizer to work. I know the aspects are
> being applied, because I can see their results when I run in the WTE. The
> visualizer just doesn't notice they're applied. In the aspectJ
> preferences the "build structure model" box is selected in all projects.
> I didn't see any seemingly-relevant errors in .metadata/log, nor any other
> indication that things were failing. Not being able to use the visualizer
> makes things difficult (which is, I'm sure, why your team built one :-).
> I realize you're focusing all of your efforts into making the ajdt 1.2
> series solid. Will there be any more enhancements to an environment for
> Eclipse 2.1-based IDEs?
> Thanks again,
> Stu
|
|
|
Re: Multi-project compilation life cycle? [message #43984 is a reply to message #43863] |
Thu, 04 November 2004 15:36 |
Eclipse User |
|
|
|
Originally posted by: mchapman.uk.ibm.com
On Wed, 03 Nov 2004 19:02:48 +0000, stu robertson wrote:
> I was able to get this mostly working with AJDT 1.1.4 on WSAD 5.1.2 and
> the AspectJ 2.0 compiler, using the approach you suggested.
That's good to hear. I assume you've upgraded to AspectJ 1.2 (as there
isn't a 2.0) using the updater scripts.
> I have a couple of questions though. The aspect project compiles to an
> aspect jar, which the dependent projects weave into their own classes
> during compilation. If you make changes to the aspects, is it a
> separate step to tell the other projects to recompile/reweave as well?
> What confused me was that I could compile the aspects fine, but when I
> rebuilt the dependent projects, the aspect project would show an error
> on all aspects saying that they hadn't been compiled with the
> "reweavable" option. I tried passing -Xreweavable in the "non-standard
> compiler options" preference, but it didn't make a difference. Anyway,
> I was surprised that the aspects themselves were being rebuilt upon
> rebuilding dependent projects.
I agree, that doesn't sound right. A lot of work has gone on in this area
since 1.1.4, so things should be more logical now. I'm less familiar with
exactly how things worked back in 1.1.4, so I'll let anyone else jump in
with any further info about this, or about the error message in your .log
file.
> Also, I wasn't able to get the visualizer to work. I know the aspects
> are being applied, because I can see their results when I run in the
> WTE. The visualizer just doesn't notice they're applied. In the
> aspectJ preferences the "build structure model" box is selected in all
> projects. I didn't see any seemingly-relevant errors in .metadata/log,
> nor any other indication that things were failing. Not being able to
> use the visualizer makes things difficult (which is, I'm sure, why your
> team built one :-).
Yes previously you needed the aspects and classes to be in the same
project for the visualiser to work well. Again, we've made a lot of
progress on this sort of thing in the 14 months since 1.1.4...
> I realize you're focusing all of your efforts into making the ajdt 1.2
> series solid. Will there be any more enhancements to an environment for
> Eclipse 2.1-based IDEs?
I'm afraid we don't currently have any plans to do this. It would be a
large undertaking, and would therefore impact our work on the 1.2 line,
unless we were to receive some additional contributions...
How much longer are you going to be constrained to Eclipse 2.1? You
mentioned IBM products previously - will you be able to move to Eclipse
3.0 as soon as 3.0-based versions of these become available?
Regards,
Matt.
|
|
|
Re: Multi-project compilation life cycle? [message #44076 is a reply to message #43984] |
Fri, 05 November 2004 16:48 |
Eclipse User |
|
|
|
Originally posted by: srobertson.nvisia.com
Matt Chapman wrote:
> That's good to hear. I assume you've upgraded to AspectJ 1.2 (as there
> isn't a 2.0) using the updater scripts.
Oops...that's what I meant :-)
>> I realize you're focusing all of your efforts into making the ajdt 1.2
>> series solid. Will there be any more enhancements to an environment for
>> Eclipse 2.1-based IDEs?
> I'm afraid we don't currently have any plans to do this. It would be a
> large undertaking, and would therefore impact our work on the 1.2 line,
> unless we were to receive some additional contributions...
I understand, though I hope that the 3.0 series is supported for at least
a year or two. Most corporate environments lag well behind the current
versions since it's such a herculean effort to get everyone upgraded.
> How much longer are you going to be constrained to Eclipse 2.1? You
> mentioned IBM products previously - will you be able to move to Eclipse
> 3.0 as soon as 3.0-based versions of these become available?
I'm hoping to nudge my client into upgrading to the new Eclipse 3.0-based
IDEs in the first half of next year. For my purposes right now
(instrumenting an ailing application) I'm working to get it running under
the 3.0 series so I can apply aspects to help with the analysis.
Thanks for all your help. Looking forward to working with the new tooling
your team has obviously been slaving away on!
Stu
> Regards,
> Matt.
|
|
|
Forgot to attach the log message... [message #584739 is a reply to message #43863] |
Wed, 03 November 2004 19:12 |
Eclipse User |
|
|
|
Originally posted by: srobertson.nvisia.com
Oops... Meant to include this. Again, I'm not sure if it's relevant, but
just in case...
!ENTRY org.eclipse.ajdt.ui 4 0 Nov 02, 2004 19:23:42.187
!MESSAGE NullPointerException thrown: null
!STACK 0
java.lang.NullPointerException
at java.lang.Throwable.<init>(Throwable.java)
at java.lang.Throwable.<init>(Throwable.java)
at java.lang.NullPointerException.<init>(NullPointerException.java)
at
org.aspectj.ajde.internal.CompilerAdapter.compile(CompilerAd apter.java:84)
at
org.aspectj.ajde.internal.AspectJBuildManager$CompilerThread .run(AspectJBuildManager.java:165)
stu robertson wrote:
> Thanks again for the help Matt.
> I was able to get this mostly working with AJDT 1.1.4 on WSAD 5.1.2 and
> the AspectJ 2.0 compiler, using the approach you suggested.
> I have a couple of questions though. The aspect project compiles to an
> aspect jar, which the dependent projects weave into their own classes
> during compilation. If you make changes to the aspects, is it a separate
> step to tell the other projects to recompile/reweave as well? What
> confused me was that I could compile the aspects fine, but when I rebuilt
> the dependent projects, the aspect project would show an error on all
> aspects saying that they hadn't been compiled with the "reweavable"
> option. I tried passing -Xreweavable in the "non-standard compiler
> options" preference, but it didn't make a difference. Anyway, I was
> surprised that the aspects themselves were being rebuilt upon rebuilding
> dependent projects.
> Also, I wasn't able to get the visualizer to work. I know the aspects are
> being applied, because I can see their results when I run in the WTE. The
> visualizer just doesn't notice they're applied. In the aspectJ
> preferences the "build structure model" box is selected in all projects.
> I didn't see any seemingly-relevant errors in .metadata/log, nor any other
> indication that things were failing. Not being able to use the visualizer
> makes things difficult (which is, I'm sure, why your team built one :-).
> I realize you're focusing all of your efforts into making the ajdt 1.2
> series solid. Will there be any more enhancements to an environment for
> Eclipse 2.1-based IDEs?
> Thanks again,
> Stu
|
|
|
Re: Multi-project compilation life cycle? [message #584796 is a reply to message #43863] |
Thu, 04 November 2004 15:36 |
Matt Chapman Messages: 429 Registered: July 2009 |
Senior Member |
|
|
On Wed, 03 Nov 2004 19:02:48 +0000, stu robertson wrote:
> I was able to get this mostly working with AJDT 1.1.4 on WSAD 5.1.2 and
> the AspectJ 2.0 compiler, using the approach you suggested.
That's good to hear. I assume you've upgraded to AspectJ 1.2 (as there
isn't a 2.0) using the updater scripts.
> I have a couple of questions though. The aspect project compiles to an
> aspect jar, which the dependent projects weave into their own classes
> during compilation. If you make changes to the aspects, is it a
> separate step to tell the other projects to recompile/reweave as well?
> What confused me was that I could compile the aspects fine, but when I
> rebuilt the dependent projects, the aspect project would show an error
> on all aspects saying that they hadn't been compiled with the
> "reweavable" option. I tried passing -Xreweavable in the "non-standard
> compiler options" preference, but it didn't make a difference. Anyway,
> I was surprised that the aspects themselves were being rebuilt upon
> rebuilding dependent projects.
I agree, that doesn't sound right. A lot of work has gone on in this area
since 1.1.4, so things should be more logical now. I'm less familiar with
exactly how things worked back in 1.1.4, so I'll let anyone else jump in
with any further info about this, or about the error message in your .log
file.
> Also, I wasn't able to get the visualizer to work. I know the aspects
> are being applied, because I can see their results when I run in the
> WTE. The visualizer just doesn't notice they're applied. In the
> aspectJ preferences the "build structure model" box is selected in all
> projects. I didn't see any seemingly-relevant errors in .metadata/log,
> nor any other indication that things were failing. Not being able to
> use the visualizer makes things difficult (which is, I'm sure, why your
> team built one :-).
Yes previously you needed the aspects and classes to be in the same
project for the visualiser to work well. Again, we've made a lot of
progress on this sort of thing in the 14 months since 1.1.4...
> I realize you're focusing all of your efforts into making the ajdt 1.2
> series solid. Will there be any more enhancements to an environment for
> Eclipse 2.1-based IDEs?
I'm afraid we don't currently have any plans to do this. It would be a
large undertaking, and would therefore impact our work on the 1.2 line,
unless we were to receive some additional contributions...
How much longer are you going to be constrained to Eclipse 2.1? You
mentioned IBM products previously - will you be able to move to Eclipse
3.0 as soon as 3.0-based versions of these become available?
Regards,
Matt.
|
|
|
Re: Multi-project compilation life cycle? [message #584841 is a reply to message #43984] |
Fri, 05 November 2004 16:48 |
Eclipse User |
|
|
|
Originally posted by: srobertson.nvisia.com
Matt Chapman wrote:
> That's good to hear. I assume you've upgraded to AspectJ 1.2 (as there
> isn't a 2.0) using the updater scripts.
Oops...that's what I meant :-)
>> I realize you're focusing all of your efforts into making the ajdt 1.2
>> series solid. Will there be any more enhancements to an environment for
>> Eclipse 2.1-based IDEs?
> I'm afraid we don't currently have any plans to do this. It would be a
> large undertaking, and would therefore impact our work on the 1.2 line,
> unless we were to receive some additional contributions...
I understand, though I hope that the 3.0 series is supported for at least
a year or two. Most corporate environments lag well behind the current
versions since it's such a herculean effort to get everyone upgraded.
> How much longer are you going to be constrained to Eclipse 2.1? You
> mentioned IBM products previously - will you be able to move to Eclipse
> 3.0 as soon as 3.0-based versions of these become available?
I'm hoping to nudge my client into upgrading to the new Eclipse 3.0-based
IDEs in the first half of next year. For my purposes right now
(instrumenting an ailing application) I'm working to get it running under
the 3.0 series so I can apply aspects to help with the analysis.
Thanks for all your help. Looking forward to working with the new tooling
your team has obviously been slaving away on!
Stu
> Regards,
> Matt.
|
|
|
Goto Forum:
Current Time: Tue Mar 19 12:20:57 GMT 2024
Powered by FUDForum. Page generated in 0.02344 seconds
|