RELEASE.md: Add '--add-opens' info for Nexus Staging 'rc:release'
Sonatype has not solved the problems in Nexus Staging Maven Plugin for
years, so it makes sense to document them.
Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
I'm the author of mill-aspectj and Mill maintainer, so i might be biased. ;-)
We use Mill with the mill-aspectj plugin in commercial projects, so I'm rather confident in it's reliability.
Remove Aspectj.dev artifact and plugin repositories
After having removed the custom-built Maven Shade version, there should
be no more references to artifacts in that repository left. Let us see
if the build passes.
Furthermore, since being a committer, I can also attach AspectJ
installers to GitHub releases.
Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
POM bug: separate jvm.arg.allowSecurityManager from jvm.arg.addOpens
Before, this was in a single variable, and for JDK 18+, the security
manager setting also falsely overwrote the '--add-opens' command. This
was the root cause for a few dozen LTW tests to fail on JDK 18, if they
were not run in full LTW mode, i.e. in a separate JVM.
After this fix, it should be possible to revert the corresponding
commits, at least their non-cosmetic parts.
Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
Also add some Eclipse, AspectJ and Java version information to the
existing update sites.
Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
Add JDK 16+ workaround for Nexus Staging Maven Plugin
Plugin version 1.6.8 does not work on JDK 16+ without special MAVEN_OPTS
opening certain modules, because the XStream version used needs it. One
workaround is to use a more recent XStream version.
TODO: remove plugin dependency after OSSRH-66257, NEXUS-26993 are fixed.
Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
Document build profiles and properties in docs/developer/BUILD.md
In doing so, I also noticed a few things in need of improvement. So,
documenting the build also drive those enhancements, such as
- the new 'fast-build' profile skipping test compilation and execution
as well as documentation generation,
- an option to skip generating source assemblies,
- to skip unzipping source assemblies if javadoc generation for them
is to be skipped too,
- activating the 'create-docs' profile by property which is
true by default instead of using 'activeByDefault=true', because the
latter does not work reliably if other profiles are activated
manually according to a Maven bug that was closed as "won't fix",
- no longer generating separate javadocs for the 'runtime' module,
because that module is not deployed and the main artifacts recreate
Javadocs from scratch for all of their constituent sources anyway.
Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
Add developer info + sample config about how to work with a RAM disk
There are two files:
- docs/developer/ram-disk/maven.config
- docs/developer/ram-disk/settings-ramdisk.xml
The latter contains info about how to set up a development environment
inside a RAM disk. Both files are to be copied to the project's '.mvn'
folder in the root directory and adjusted according to the description.
Just in case, .gitignore ignores the files if they exist in '.mvn', so
they are not being staged and committed accidentally.
An additional screenshot shows how to configure the Windows Recycle Bin
to immediately delete files in order too save space on the RAM disk.
Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
Updated org.aspectj.asm relationship model to string-handle-based API in order to support adding and removing relationships at any point in the compilation cycle, and to support external tools building relationships (e.g. JDT's incremental containment hierarchy builder). Also made inter-type declaration relationships show up in the model.