I've got several AJ projects running under Eclipse 3.4.2 with Leopard
and 1.6 compliance. I'm also running the latest AJ from the dev site
rather than release, but I'm pretty sure I had the release installed
previously without problems.
On Mar 3, 2009, at 12:03 PM, Andy Clement wrote:
If you can reliably recreate:
java.lang.RuntimeException
at org.aspectj.asm.AsmManager.verifyAssumption(AsmManager.java:1107)
at org.aspectj.asm.AsmManager.removeSingleNode(AsmManager.java:1040)
then I'd be interested in the exact steps and we can look to fix
it. But from the exception I imagine a build has to be starting at
the exact time you copy/paste, so might not happen every time.
I don't have my Mac with me right now so I can't double check
Eclipse 3.4.2 with 1.6 compliance behaviour - i'm sure someone else
on the list can though :) Anyone?
Andy.
2009/3/3 Alejandro Garcia <[email protected]>
Hello Andy,
The 1.6 compliance happens in every single aspect I had implemented
including the one previously send.
I changed everything in eclipse to make it work and also re-install
eclipse a couple times just in case something was not working ok.
I'm using a Mac OS 10.5 (Leopard).
Still if you need me to send you other codes, please let me know.
I like to show you something else I just got. I was Copy Pasting
some source files from one project to another one.
I didn't check if it is an existing bug but I wanted to take this
opportunity to show it to you just in case it is important.
java.lang.RuntimeException
at org.aspectj.asm.AsmManager.verifyAssumption(AsmManager.java:1107)
at org.aspectj.asm.AsmManager.removeSingleNode(AsmManager.java:1040)
at
org
.aspectj
.asm
.AsmManager.removeRelationshipsTargettingThisType(AsmManager.java:736)
at org.aspectj.weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1120)
at
org
.aspectj
.ajdt
.internal
.compiler
.AjPipeliningCompilerAdapter
.weaveQueuedEntries(AjPipeliningCompilerAdapter.java:435)
at ... ob.run(AutoBuildJob.java:238)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Compile error: RuntimeException thrown: Assertion is false
By the way, sorry about the previous one.
Alejandro
On Mar 3, 2009, at 5:35 PM, Andy Clement wrote:
On the problem with 1.6 compliance, are you able to share the code
for that with me as well?
Andy.
2009/3/3 Alejandro Garcia <[email protected]>
Hello Andy,
On Mar 3, 2009, at 4:39 PM, Andy Clement wrote:
Hi Alejandro,
Compliance 1.6 in Eclipse 3.4.2 should be fine. I just created
the AspectJ Bean example project (File>New>AspectJ Examples>Bean
Example) and changed the compliance to 1.6 and it was ok. What
happens to you when it doesn't work - do you get an error?
I don't have any error, it runs normally but without any output in
the console. I tried it once again but no luck.
> Also, I tried some examples and sometimes I've got that some
advices are not being apply (raised a warning!). I checked it with
an experienced
> aspect user (not in eclipse) and there is no reason not to be
working (the aspect and the example class are very simple).
If compliance level is 1.5 or above, you will get warnings when
advice does not match - are those the warnings you see? To
comment on why i isn't matching, I would need to see the code -
are you able to post any of it here?
I see the warnings....I also attached the code... as I said is very
simple and is from a book. the warning is in
MinimumBalanceRuleAspect.
Thanks a lot for your help, I really appreciated.
Alejandro
public class Account {
private float balance;
private final int accountNumber;
public Account(final int accountNumber) {
this.accountNumber = accountNumber;
}
public void credit(final float credit) {
this.balance = credit + balance;
}
public void debit(final float debit) throws
InsufficientBalanceException{
if(this.balance < debit) {
new InsufficientBalanceException("Not enough money in the
account");
}else {
this.balance -= debit;
}
}
public void setBalance(final float balance) {
this.balance = balance;
}
public float getBalance() {
return balance;
}
}
public final class InsufficientBalanceException extends Exception {
public InsufficientBalanceException(final String mssg) {
super(mssg);
}
}
public final aspect MinimumBalanceRuleAspect {
private float Account.minimumBalance;
public float Account.getAvailableBalance() {
return getBalance() - minimumBalance;
}
after(final Account a) : execution(Account.new(..)) && this(a){
a.minimumBalance = 25;
}
//ADVICE WITH WARNING!!!!!!
before(final Account account, final float amount) throws
InsufficientBalanceException :
execution(* Account.debit()) && this(account) && args(amount){
if(account.getAvailableBalance() < amount) {
throw new InsufficientBalanceException("----- Insufficient
funds -----");
}
}
}
public final class TestAccount {
public static void main(final String[] args) throws
InsufficientBalanceException{
final Account account = new Account(1234);
account.credit(1000);
account.debit(500);
}
}
cheers,
Andy.
2009/3/3 Alejandro Garcia <[email protected]>
Hello I'm Alejandro and also a newbie in this area.
I have the following problems: I've been trying to use Java JRE
1.6 and Compiler compliance level 1.6 in Eclipse 3.4.2 with
AspectJ but it seems not to be working. If I change it to JRE 1.5
and compiler 1.5 works fine.
Is this correct? Could you point me to any place where I can find
this information?
Also, I tried some examples and sometimes I've got that some
advices are not being apply (raised a warning!). I checked it with
an experienced aspect user (not in eclipse) and there is no reason
not to be working (the aspect and the example class are very
simple).
Any idea?
Thank you very much in advance for any help,
Alejandro Garcia
Email: [email protected]
Website: www.atelier.inf.unisi.ch/~garciaal
_______________________________________________
aspectj-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/aspectj-users
<ATT00001.txt>
_______________________________________________
aspectj-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/aspectj-users
<ATT00001.txt>
_______________________________________________
aspectj-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/aspectj-users
_______________________________________________
aspectj-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/aspectj-users
_______________________________________________
aspectj-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/aspectj-users