[ 
https://issues.apache.org/jira/browse/LABS-412?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

jan iversen closed LABS-412.
----------------------------

    Resolution: Won't Fix

outdated and  closed, if not correct please reopen.

> [eclipse] Generate magma.locals on the fly based on Maven workspace 
> resolution.
> -------------------------------------------------------------------------------
>
>                 Key: LABS-412
>                 URL: https://issues.apache.org/jira/browse/LABS-412
>             Project: Labs
>          Issue Type: New Feature
>          Components: Magma
>    Affects Versions: Next
>            Reporter: Simone Gianni
>             Fix For: Next
>
>
> magma.locals is a file that magma:run reads when starting a Magma web 
> application. It offers a way for the developer to tell Magma to load stuff 
> from unpacked projects instead of loading it from packed jars. This is 
> extremely useful when debugging/writing resource files, like css or 
> javascript. 
> In fact, it is currently limited to resource folders.
> Since now we have an Eclipse plugin that cooperates with Maven inside 
> Eclipse, we have a way to know which dependencies of a web project are 
> present in the workspace and where to locate them on the hard drive, so we 
> could generate magma.locals automatically (eventually with a different name, 
> inside the target folder, so that user additions are possible).
> Moreover, since we have now a builder inside Eclipse, we could extend 
> magma.locals to load also classes in target-eclipse/classes if they are 
> present, so that we don't require the user to "clean install" all artifacts 
> when running a debug session from Eclipse.
> A few checks should be in place to do this however :
> - Do that only if target-eclipse/classes exists, obviously
> - Do that only if target-eclipse/classes is more recent than the repository 
> jar file or target/classes
> - What to do if the user has his own workspace version of an artifact but a 
> new one is found on the repository? I'd go for the workspace version (only 
> when running from Eclipse?)
> (same problems are already there for resources, and resources from 
> magma.locals always take precedence over jar resources, but resources does 
> not usually crash the application, so probably we should care more if adding 
> also classes folders).
> Another thing to evaluate is that classes in target-eclipse/classes are not 
> compiled with -XterminateAfterCompile, and this could create some problems to 
> the running instance due to some AspectJ bugs.
> (just to name them explicitly, AspectJ is not yet ready for parallel 
> development of aspect libraries. So, closures generated by AspectJ takes 
> progressive numbers relative to the current compiler environment, and it 
> could happen that if two different packages are both independently weaving 
> into a third one, generated closures share the same number and conseguently 
> the same class names, creating conflicts on the running instance. Another 
> error happens when package B depends on package A that has aspect weaving 
> inside package B classes; if package A then REMOVES one of these aspects, 
> package B still refers to it, but the weaver SHOULD find out that the aspect 
> is not there anymore and remove it, instead it complains with an error, 
> requiring package B to be recompiled, making aspects analogous to public 
> interfaces when it comes to binary compatibility.) 



--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: labs-unsubscr...@labs.apache.org
For additional commands, e-mail: labs-h...@labs.apache.org

Reply via email to