My understanding is that tools.jar is going to be removed in the (Oracle)
Java 9 JDK. So it would be good to get away from that dependency, unless
you want a new problem when Java 9 is released.

/Anders

On Mon, Sep 8, 2014 at 8:30 AM, Lennart Jörelid <lennart.jore...@gmail.com>
wrote:

> So - let's see if we can get the JDK versions and idea behind banning
> certain dependencies straight here.
> There are 3 Java/JDK versions of relevance for the a-m-p:
>
>
>    1. The Java bytecode version when compiling the a-m-p. This is
>    normally defined in the mojo-parent POM using the variable
>    "mojo.java.target" (which has the value 1.5 in version 33 of the
>    mojo-parent).
>    2. The Java version of the JRE used when running the a-m-p as part of
>    a maven POM. Assuming that the correct JDK specification is used within the
>    target POM, the AJC compiler invoked by the a-m-p will generate bytecode of
>    the same java version as the compiler expects.
>    3. The Java version of the JDK used within the Maven process building
>    the site for the a-m-p-enabled project. This defines the *tools.jar*
>    used to generate the documentation (or, rather, used by the *ajdoc*
>    tool to generate the AspectJ documentation). If tools.jar is not found on
>    the classpath, the following message is shown in the debug log: *ajdoc
>    requires a JDK 1.4 or later tools jar - exiting*
>
> Now - if I understand things correctly:
>
>    1. We should include the latest stable aspectjtools dependency (i.e.
>    in the 1.8 version series). The 1.8 version of AspectJ is built using a JDK
>    later than 1.5 - implying that we cannot enforce max JDK version as 1.5.
>    This leaves us with 2 choices:
>       1. Explicitly increase the JDK version requirements in the a-m-p POM
>       2. Refrain from enforcing a max JDK when building the a-m-p.
>       (Simpler, but possibly laden with bytecode version errors in runtime).
>       2. The AJC Java compliance version supplied must simply match the
>    target JDK version. No changes here.
>    3. Unless the tools.jar dependency is actually included in the
>    classpath of the A-M-P, the ajdoc tool cannot produce the AspectJ site. We
>    can cope with this in 2 ways:
>       1. Simply include the tools.jar dependency in the a-m-p plugin POM
>       and brace for tools.jar change impact when generating sites with an 
> unknown
>       tools.jar/JDK version. Mostly, this seems to be an approach that works 
> well.
>       2. Force  a-m-p users to explicitly include a *tools.jar*
>       dependency in every parent POM where the a-m-p is used in order to be 
> able
>       to generate the AspectJ site. I believe it would be overly complex.
>
>
> Unless someone has strong opinions for another approach, I intend to:
>
>
>    - Remove the bytecode-level enforcement from the a-m-p POM, as per the
>    thoughs under 1 above.
>    - Keep the tools.jar dependency in the a-m-p POM, as per the thoughts
>    under 3 above.
>
>
> 2014-09-04 21:07 GMT+02:00 Robert Scholte <codeh...@sourcegrounds.com>:
>
>> Op Tue, 02 Sep 2014 23:44:10 +0200 schreef Lennart Jörelid <
>> lennart.jore...@gmail.com>:
>>
>>
>>  I just noted, but adding a Max JDK version doesn't seem to make any sense
>>> in this case.
>>> The AspectJ compiler will generate bytecode compliant with a certain JDK
>>> version, implying that performing bytecode manipulation (i.e. calling
>>> AJC)
>>> without that JDK version present will cause problems.
>>>
>>
>> No, you misunderstood the reason for this rule.
>> It means that dependencies must be compiled with JDK5 or less (for that
>> reason it is called Max).
>>
>> Since the aspectjtools.jar is compiled with JDK6 (or higher), which means
>> that you can't use it with JDK5.
>> This has *nothing* to with the generated bytecode by AspectJ, only with
>> the runtime requirement of the AspectJ compiler.
>>
>> Ideally you use both animal-sniffer for sources and
>> enforceBytecodeVersion for dependencies. In fact, let's do this for the
>> mojo-parent so all plugins will work fine.
>>
>> thanks,
>> Robert
>>
>>
>>
>>> Therefore, I believe we must validate the AspectJ Maven plugin on
>>> appropriate JDKs.
>>> It might make sense to restrict the JDK used (by bamboo etc.) to be equal
>>> to the Java version specified in the AJC runtime arguments, though.
>>> That would effectively be the same as setting a *maximum* JDK version.
>>>
>>>
>>> 2014-09-02 23:30 GMT+02:00 Robert Scholte <codeh...@sourcegrounds.com>:
>>>
>>>  Hi,
>>>>
>>>> I've added the enforceBytecodeVersion rule to see which jar(s) are
>>>> causing
>>>> problems.
>>>> It seems that aspectjtools can't run with JDK5.
>>>> As long as org.aspectj.tools.ajc.Main.Main() is called within the same
>>>> JVM, we need to upgrade the JDK requirement.
>>>> Otherwise we need to start a new JVM, preferably with toolchains to
>>>> manage
>>>> the JDK versions. Not sure if it's worth it to implement, though.
>>>>
>>>> For me this is a valid reason to change the required JDK, I'll leave it
>>>> up
>>>> to you.
>>>>
>>>> Robert
>>>>
>>>> Op Tue, 02 Sep 2014 23:00:26 +0200 schreef Robert Scholte <
>>>> codeh...@sourcegrounds.com>:
>>>>
>>>>
>>>>  Hi,
>>>>
>>>>>
>>>>> I've fixed the unittest, next step is to fix the integration tests.
>>>>> I've added a JDK8 task to the integration tests, so now it will be
>>>>> tested
>>>>> with the minimum (JDK5) and maximum, both with Maven-2.2.1.
>>>>> There are only linux bambooo-agents available right now. According to
>>>>> JIRA[1] there has never been a request to support more operating
>>>>> systems,
>>>>> so go ahead and ask.
>>>>> In the meantime I can verify it with Win7 + most of the JDKs available
>>>>> at
>>>>> home.
>>>>>
>>>>> thanks,
>>>>> Robert
>>>>>
>>>>> ps. to log on and configure: https://bamboo-ci.codehaus.
>>>>> org/userlogin!default.action
>>>>>
>>>>> [1] https://jira.codehaus.org/browse/HAUS/component/12684
>>>>>
>>>>>
>>>>> Op Tue, 02 Sep 2014 21:25:33 +0200 schreef Dan Tran <dant...@gmail.com
>>>>> >:
>>>>>
>>>>>  Hi Anders, Robert, Karl
>>>>>
>>>>>>
>>>>>> Are you able to help with this issue at bamboo setup?
>>>>>>
>>>>>> Thanks
>>>>>>
>>>>>> -D
>>>>>>
>>>>>>
>>>>>> On Tue, Sep 2, 2014 at 10:33 AM, Lennart Jörelid <
>>>>>> lennart.jore...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>  We need to set up a few projects in Bamboo where the
>>>>>>
>>>>>>> aspectj_maven_plugin
>>>>>>> is compiled using different kinds of JDKs. This is to validate that
>>>>>>> the
>>>>>>> AspectJ compiler options for the respective JDKs do not cause
>>>>>>>
>>>>>>> java.lang.UnsupportedClassVersionError: Bad version number in .class
>>>>>>> file
>>>>>>>         at java.lang.ClassLoader.defineClass1(Native Method)
>>>>>>>         at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
>>>>>>>
>>>>>>>
>>>>>>> ... as is currently the case with a unit/integration test for the
>>>>>>> AspectJ
>>>>>>> maven plugin.
>>>>>>>
>>>>>>> We would also really need a Windows execution environment on Codehaus
>>>>>>> Bamboo - although I'm aware that this is stretching things a bit.
>>>>>>> This
>>>>>>> is
>>>>>>> simply to ensure that none of our ITs and plugins fail to properly
>>>>>>> encode
>>>>>>> paths and other OS-specific things.
>>>>>>>
>>>>>>>
>>>>>>> 2014-09-02 18:30 GMT+02:00 Dan Tran <dant...@gmail.com>:
>>>>>>>
>>>>>>> what do we need from codehaus bamboo?
>>>>>>>
>>>>>>>
>>>>>>>> Thanks
>>>>>>>>
>>>>>>>> -D
>>>>>>>>
>>>>>>>>
>>>>>>>> On Tue, Sep 2, 2014 at 9:06 AM, Lennart Jörelid <
>>>>>>>> lennart.jore...@gmail.com> wrote:
>>>>>>>>
>>>>>>>>  No, we should not.
>>>>>>>>
>>>>>>>>>
>>>>>>>>> https://bamboo-ci.codehaus.org/browse/MOJO-MASPECTJ
>>>>>>>>>
>>>>>>>>> Fails since we have been unable - thus far - to create a new
>>>>>>>>> project
>>>>>>>>> with JDK 8 support.
>>>>>>>>> If we could get that done, we would be one step closer to release.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 2014-09-02 17:46 GMT+02:00 Dan Tran <dant...@gmail.com>:
>>>>>>>>>
>>>>>>>>> should we go ehead to push this release out?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> Thanks
>>>>>>>>>>
>>>>>>>>>> -D
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Wed, Aug 20, 2014 at 12:08 PM, Anders Hammar <
>>>>>>>>>> and...@hammar.net>
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>  I filed a ticket for this:
>>>>>>>>>>
>>>>>>>>>>> http://jira.codehaus.org/browse/MASPECTJ-135
>>>>>>>>>>>
>>>>>>>>>>> Feel free to add more info as you see fit.
>>>>>>>>>>>
>>>>>>>>>>> /Anders
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Wed, Aug 20, 2014 at 3:56 PM, Dan Tran <dant...@gmail.com>
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>>  Hi Sergei, you are right, i have a convenient script to 'cd'
>>>>>>>>>>> into
>>>>>>>>>>>
>>>>>>>>>>>> my
>>>>>>>>>>>> dev tree like this
>>>>>>>>>>>>
>>>>>>>>>>>> @echo off
>>>>>>>>>>>> cd c:\views\dev
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> so the fix is ( for now)
>>>>>>>>>>>>
>>>>>>>>>>>> @echo off
>>>>>>>>>>>> cd C:\views\dev
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Tue, Aug 19, 2014 at 11:35 PM, Sergei Ivanov <
>>>>>>>>>>>> sergei_iva...@mail.ru> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>  Hi Dan,
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Looks like the drive letter C: differs in case between expected
>>>>>>>>>>>>> and
>>>>>>>>>>>>> actual. You may want to change the test script to use
>>>>>>>>>>>>> case-insensitive
>>>>>>>>>>>>> comparison on windows.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>> --
>>>>>>>>>>>>> Sergei Ivanov
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Wednesday, 20 August 2014 07:26 +0100 from Dan Tran <
>>>>>>>>>>>>> dant...@gmail.com>:
>>>>>>>>>>>>>
>>>>>>>>>>>>> no problem building on linux for both java 7 and 8
>>>>>>>>>>>>>
>>>>>>>>>>>>> also works inside my windows eclipse IDE.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Must have someting to do with my env.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>
>>>>>>>>>>>>> -D
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Tue, Aug 19, 2014 at 11:04 PM, Dan Tran < dant...@gmail.com
>>>>>>>>>>>>> >
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>> >not sure why, but i am not able to build it locally using both
>>>>>>>>>>>>> java
>>>>>>>>>>>>> 7 and 8  on windows (have not try it on linux yet )
>>>>>>>>>>>>> >
>>>>>>>>>>>>> >[INFO] Building: JavaSourcesDefault\pom.xml
>>>>>>>>>>>>> >[INFO] run script verify.groovy
>>>>>>>>>>>>> >[INFO] ..FAILED (2.7 s)
>>>>>>>>>>>>> >[INFO]   The post-build script did not succeed. assert
>>>>>>>>>>>>> execLine.endsWith( fooClazz.getAbsolutePath() )
>>>>>>>>>>>>> >       |        |         |        |
>>>>>>>>>>>>> >       |        false     |
>>>>>>>>>>>>>  c:\views\dev\mojo\mojo\aspectj-maven-plugin\target\
>>>>>>>>>>>>> it\JavaSourcesDefault\src\main\java\foo\Clazz.java
>>>>>>>>>>>>> >       |
>>>>>>>>>>>>>  c:\views\dev\mojo\mojo\aspectj-maven-plugin\target\
>>>>>>>>>>>>> it\JavaSourcesDefault\src\main\java\foo\Clazz.java
>>>>>>>>>>>>> >       [DEBUG] Running : ajc -1.4 -classpath
>>>>>>>>>>>>> C:\views\dev\mojo\mojo\aspectj-maven-plugin\target\
>>>>>>>>>>>>> local-repo\org\aspectj\aspectjrt\1.8.0\aspectjrt-1.8.
>>>>>>>>>>>>> 0.jar;C:\views\dev\mojo\mojo\aspectj-maven-plugin\t
>>>>>>>>>>>>> >arget\it\JavaSourcesDefault\target\classes -d
>>>>>>>>>>>>> C:\views\dev\mojo\mojo\aspectj-maven-plugin\target\
>>>>>>>>>>>>> it\JavaSourcesDefault\target\classes
>>>>>>>>>>>>> C:\views\dev\mojo\mojo\aspectj-maven-plugin\target\
>>>>>>>>>>>>> it\JavaSourcesD
>>>>>>>>>>>>> >efault\src\main\java\foo\Clazz.java
>>>>>>>>>>>>> >[INFO] Building: JavaSourcesEmpty\pom.xml
>>>>>>>>>>>>> >[INFO] run script verify.groovy
>>>>>>>>>>>>> >[INFO] ..SUCCESS (2.1 s)
>>>>>>>>>>>>> >[INFO] Building: JavaSourcesList\pom.xml
>>>>>>>>>>>>> >[INFO] run script verify.groovy
>>>>>>>>>>>>> >[INFO] ..FAILED (2.5 s)
>>>>>>>>>>>>> >[INFO]   The post-build script did not succeed. assert
>>>>>>>>>>>>> execLine.endsWith( fooClazz.getAbsolutePath() )
>>>>>>>>>>>>> >       |        |         |        |
>>>>>>>>>>>>> >       |        false     |
>>>>>>>>>>>>>  c:\views\dev\mojo\mojo\aspectj-maven-plugin\target\
>>>>>>>>>>>>> it\JavaSourcesList\src\java\foo\Clazz.java
>>>>>>>>>>>>> >       |
>>>>>>>>>>>>>  c:\views\dev\mojo\mojo\aspectj-maven-plugin\target\
>>>>>>>>>>>>> it\JavaSourcesList\src\java\foo\Clazz.java
>>>>>>>>>>>>> >       [DEBUG] Running : ajc -1.4 -classpath
>>>>>>>>>>>>> C:\views\dev\mojo\mojo\aspectj-maven-plugin\target\
>>>>>>>>>>>>> local-repo\org\aspectj\aspectjrt\1.8.0\aspectjrt-1.8.
>>>>>>>>>>>>> 0.jar;C:\views\dev\mojo\mojo\aspectj-maven-plugin\t
>>>>>>>>>>>>> >arget\it\JavaSourcesList\target\classes -d
>>>>>>>>>>>>> C:\views\dev\mojo\mojo\aspectj-maven-plugin\target\
>>>>>>>>>>>>> it\JavaSourcesList\target\classes
>>>>>>>>>>>>> C:\views\dev\mojo\mojo\aspectj-maven-plugin\target\
>>>>>>>>>>>>> it\JavaSourcesList\sr
>>>>>>>>>>>>> >c\java\foo\Clazz.java
>>>>>>>>>>>>> >
>>>>>>>>>>>>> >
>>>>>>>>>>>>> >
>>>>>>>>>>>>> >On Tue, Aug 19, 2014 at 10:44 PM, Lennart Jörelid <
>>>>>>>>>>>>> lennart.jore...@gmail.com > wrote:
>>>>>>>>>>>>> >>Yes.
>>>>>>>>>>>>> >>
>>>>>>>>>>>>> >>We have presently some Bamboo setup issues, but the code has
>>>>>>>>>>>>> built
>>>>>>>>>>>>> locally for me since quite awhile.
>>>>>>>>>>>>> >>Thus, it is presently more of a Bamboo issue than a
>>>>>>>>>>>>> development
>>>>>>>>>>>>> one.
>>>>>>>>>>>>> >>
>>>>>>>>>>>>> >>
>>>>>>>>>>>>> >>2014-08-19 22:42 GMT+02:00 Dan Tran < dant...@gmail.com > :
>>>>>>>>>>>>> >>
>>>>>>>>>>>>> >>>Hello MOJO team,
>>>>>>>>>>>>> >>>
>>>>>>>>>>>>> >>>any plan to push 1.7 out for JDK 8 support?
>>>>>>>>>>>>> >>>
>>>>>>>>>>>>> >>>Thanks
>>>>>>>>>>>>> >>>
>>>>>>>>>>>>> >>>-D
>>>>>>>>>>>>> >>
>>>>>>>>>>>>> >>
>>>>>>>>>>>>> >>--
>>>>>>>>>>>>> >>--
>>>>>>>>>>>>> +==============================+
>>>>>>>>>>>>> | Bästa hälsningar,
>>>>>>>>>>>>> | [sw. "Best regards"]
>>>>>>>>>>>>> |
>>>>>>>>>>>>> | Lennart Jörelid
>>>>>>>>>>>>> | EAI Architect & Integrator
>>>>>>>>>>>>> |
>>>>>>>>>>>>> | jGuru Europe AB
>>>>>>>>>>>>> | Mölnlycke - Kista
>>>>>>>>>>>>> |
>>>>>>>>>>>>> | Email: l...@jguru.se
>>>>>>>>>>>>> | URL: www.jguru.se
>>>>>>>>>>>>> | Phone
>>>>>>>>>>>>> | (skype): jgurueurope
>>>>>>>>>>>>> | (intl): +46 708 507 603
>>>>>>>>>>>>> | (domestic): 0708 - 507 603
>>>>>>>>>>>>> +==============================+
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>> --
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> +==============================+
>>>>>>>>> | Bästa hälsningar,
>>>>>>>>> | [sw. "Best regards"]
>>>>>>>>> |
>>>>>>>>> | Lennart Jörelid
>>>>>>>>> | EAI Architect & Integrator
>>>>>>>>> |
>>>>>>>>> | jGuru Europe AB
>>>>>>>>> | Mölnlycke - Kista
>>>>>>>>> |
>>>>>>>>> | Email: l...@jguru.se
>>>>>>>>> | URL:   www.jguru.se
>>>>>>>>> | Phone
>>>>>>>>> | (skype):    jgurueurope
>>>>>>>>> | (intl):     +46 708 507 603
>>>>>>>>> | (domestic): 0708 - 507 603
>>>>>>>>> +==============================+
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>> --
>>>>>>>
>>>>>>> --
>>>>>>> +==============================+
>>>>>>> | Bästa hälsningar,
>>>>>>> | [sw. "Best regards"]
>>>>>>> |
>>>>>>> | Lennart Jörelid
>>>>>>> | EAI Architect & Integrator
>>>>>>> |
>>>>>>> | jGuru Europe AB
>>>>>>> | Mölnlycke - Kista
>>>>>>> |
>>>>>>> | Email: l...@jguru.se
>>>>>>> | URL:   www.jguru.se
>>>>>>> | Phone
>>>>>>> | (skype):    jgurueurope
>>>>>>> | (intl):     +46 708 507 603
>>>>>>> | (domestic): 0708 - 507 603
>>>>>>> +==============================+
>>>>>>>
>>>>>>>
>>>>>>>  ------------------------------------------------------------
>>>>> ---------
>>>>> To unsubscribe from this list, please visit:
>>>>>
>>>>>     http://xircles.codehaus.org/manage_email
>>>>>
>>>>>
>>>>>  ---------------------------------------------------------------------
>>>> To unsubscribe from this list, please visit:
>>>>
>>>>    http://xircles.codehaus.org/manage_email
>>>>
>>>>
>>>>
>>>>
>>>
>> ---------------------------------------------------------------------
>> To unsubscribe from this list, please visit:
>>
>>    http://xircles.codehaus.org/manage_email
>>
>>
>>
>
>
> --
>
> --
> +==============================+
> | Bästa hälsningar,
> | [sw. "Best regards"]
> |
> | Lennart Jörelid
> | EAI Architect & Integrator
> |
> | jGuru Europe AB
> | Mölnlycke - Kista
> |
> | Email: l...@jguru.se
> | URL:   www.jguru.se
> | Phone
> | (skype):    jgurueurope
> | (intl):     +46 708 507 603
> | (domestic): 0708 - 507 603
> +==============================+
>
>

Reply via email to