Commit Graph

198 Commits

Author SHA1 Message Date
Tamas Cservenak
ef981d5f5b Client diag option, GraalVM updates (#1042)
Changes:
* add client --diag option
* update graalvm toolchain
* update GH actions
2024-06-20 17:54:54 +02:00
Tamas Cservenak
952a67450b mixup in case of DISPLAY messages type (#1038)
ProjectEvent message mixup fixed.

Fixes #1036
2024-06-20 09:01:29 +02:00
Tamas Cservenak
6de743152c Default value must be manually handled (#953)
Default must be manually handled, i missed this.

Fixes #912
2024-05-22 16:33:29 +02:00
Guillaume Nodet
42b230c10c Upgrade to Maven 4.0.0-beta-1 (#974) 2024-05-03 21:10:04 +02:00
Tamas Cservenak
8bb26402c1 Cumulative update of GH flow (#950)
Changes:
* Cumulative update of GH flow
* Graal update
* Add concurrency
* Add -V to see what maven is used
* Use same Java version for def build
* Apply @gzm55 advice
2024-04-19 15:23:45 +02:00
Tamas Cservenak
a1ac6660ec Ignore smart-builder core extension, if present. (#916)
Add new daemon param to ignore some extensions, make default to ignore takari-smart-builder as it is used by mvnd itself as well.

Fixes #912
2024-04-17 22:04:35 +02:00
Guillaume Nodet
dc4179fc3b Switch to Maven 4.0.0-alpha-8 (#895) 2023-10-25 17:03:53 +02:00
Guillaume Nodet
f8adf1b770 Switch to slf4j simple logger (fixes #835) (#868) 2023-07-10 15:16:32 +02:00
Guillaume Nodet
c4aaed6909 Fix interpolation of environment variables in config properties (fixes #693) (#866) 2023-07-03 17:36:32 +02:00
Florian LOPES
5d5fb2fc62 fix(log-typo): Fix minor typo in javaHomeFromPath warn log (#856) 2023-06-16 11:18:13 +02:00
Guillaume Nodet
b00e7978a8 Fix broken detection of mvnd home on alpine linux (fixes #849) (#848)
* Fix for musl dynamic loader
* Add caching for mvnd.home and java.home
* Add IT for alpine linux
2023-05-18 07:37:14 +02:00
James Z.M. Gao
99a5cfba7f native image: hardening csu for old glibc (#827)
Workround of return-to-csu problem for old glibc, use non-initialized
static variables instead of the stack ones. See workround 2 of
https://i.blackhat.com/briefings/asia/2018/asia-18-Marco-return-to-csu-a-new-method-to-bypass-the-64-bit-Linux-ASLR-wp.pdf
2023-04-06 10:57:51 +02:00
Guillaume Nodet
5093ced94b Remove plexus-utils and commons-xxx references (#833) 2023-04-06 10:52:45 +02:00
James Z.M. Gao
da20df03cd Make native mvnd only require glibc 2.12 on ubuntu 22.04 (#825, fixes #823)
The modern glibc from 2.34 had two breaking changes: move all api in lib{pthread,dl,rt}.so into libc.so, new static start up code breaking the runtime compatibility for old glibc (<2.34). See https://developers.redhat.com/articles/2021/12/17/why-glibc-234-removed-libpthread for more info.

This commit has 3 changes to overcome these changes:
- override gcc path to redefine glibc symbols on the fly in the generated .o by graalvm when linking
- provide a dynamic startup code to support both old and modern runtime glibc
- add needed dynamic libraries: lib{pthread,rt,dl}.so.
2023-03-23 09:02:38 +01:00
Guillaume Nodet
eba51d2d7e Fix mvnd home detection based on executable path 2023-03-15 12:43:39 +01:00
Guillaume Nodet
0e057cb12b Make sure mvnd's plexus-interactivity is not in the maven classloader, fixes #807
* the logging framework is extracted into its own jar and moved in the mvn/lib/ directory
* the other daemon jars are moved into the mvn/lib/mvnd directory and not used by maven at all
This makes maven class loader almost identical to the stock maven classloader, but for the logging framework
2023-03-14 13:53:24 +01:00
Petr Široký
e1815e52a3 Minor clean-up in OsUtils
* fix typo in method names
 * add a test for the other *toHumanReadable method
 * replace StringBuilder usage with simple concatenation
   where applicable (for fixed length strings)
2023-03-12 23:08:32 +01:00
Petr Široký
50653ae7d9 logging: use format specifiers instead of string concatenation 2023-03-12 23:08:32 +01:00
Guillaume Nodet
f6de618454 Fix JUL logging (#792) 2023-03-10 17:19:42 +01:00
Guillaume Nodet
d771375870 Move back mvn script into the mvn/bin folder to avoid conflicts, fixes #787 (#803) 2023-03-10 12:59:04 +01:00
Guillaume Nodet
45496afeae Make sure to print the completion script to the standard output stream (fix #785) (#791) 2023-02-14 17:07:07 +01:00
Stefan Oehme
1bcfc29d45 Make Classworld setup more alike to vanilla Maven (#784)
Use the plexus Launcher to start the daemon server, just like we would
launch a normal Maven process.

This improves compatibility with any extensions or plugins that assume that
their ClassLoader is a ClassRealm.
2023-02-14 17:06:34 +01:00
Guillaume Nodet
19dca434d1 Fix code style 2023-01-28 14:33:26 +01:00
Guillaume Nodet
4833e6f73f Discover mvnd.home by looking for the mvnd-daemon jar in lib or lib/ext 2023-01-28 14:15:58 +01:00
Guillaume Nodet
9d9f9c62f2 Workaround for MNG-7673 2023-01-28 02:11:14 +01:00
Guillaume Nodet
e10aecd5f7 Fix displayed version 2023-01-24 18:26:02 +01:00
Guillaume Nodet
b0ea852798 Fix discovery of mvnd.home using the executable 2023-01-24 11:36:39 +01:00
Guillaume Nodet
4f90d558b2 Attempt at moving mvn as first class citizen in mvnd distribution, #392 (#769) 2023-01-24 10:50:40 +01:00
Guillaume Nodet
19cc6c42b7 Make connection timeouts configurable, fixes #772 (#778) 2023-01-23 19:56:49 +01:00
Guillaume Nodet
f3c336adb9 Fix spotless config to include all java files (#768) 2023-01-10 18:39:29 +01:00
Guillaume Nodet
89841adbcb Upgrade to maven parent 39 and reformat accordingly 2022-12-16 11:38:47 +01:00
Guillaume Nodet
55236739f8 Add a mvnd.rawStreams property (#719) 2022-12-16 11:33:59 +01:00
Guillaume Nodet
c91c0e8352 Fix code style 2022-12-16 10:26:29 +01:00
Guillaume Nodet
7a788bb86f Add an option to specify the debug address and display info when starting (fixes #737) (#753) 2022-12-16 08:39:39 +01:00
James Z.M. Gao
f8d047bdae Use muti-release jar to fallback mvnd-client to original maven (#722)
* Use muti-release jar to fallback mvnd-client to original maven

The mvnd-client is built to a muti-release jar. The default version of
    DefaultClient is compiled against the same target version as the
   embedded maven (4.x, so JDK 1.8) which only invoke the MavenCli.main(). 
The java-11 version is the full qualified mvnd-client.

* update cmd scripts

* embedded maven now works under JDK 1.8

Build SimpleAppender for JDK 1.8 since it is the log appender only
   for the embedded maven

Co-authored-by: Guillaume Nodet <gnodet@gmail.com>
2022-12-14 17:41:02 +01:00
Peter Palaga
031c263232 Fixup #716 Calculate java home from java command (#721)
* Add a test
* Simplify the stream processing

Co-authored-by: Guillaume Nodet <gnodet@gmail.com>
2022-12-14 00:35:10 +01:00
Guillaume Nodet
bc021d0577 Fix daemon JVM start options (follow-up to #749) (#751) 2022-12-09 23:58:13 +01:00
Guillaume Nodet
a14a1eb80f Reformat 2022-11-22 15:44:53 +01:00
James Z.M. Gao
c94ee72a30 Calculate java home from java command (#716) 2022-10-16 20:26:35 +02:00
Guillaume Nodet
aacd3eb4cc Handle the multimodule project directory as early as possible in the client (fixes #694) (#697) 2022-10-03 22:46:09 +02:00
Guillaume Nodet
c310e3d206 Fix the bash completion template (#670, #682) (#698) 2022-09-30 22:42:27 +02:00
Guillaume Nodet
6cc1770200 System properties should have precedence over environment variables, fixes #675 (#680) 2022-09-07 11:01:01 +02:00
Guillaume Nodet
0299a38264 Simplify the InterpolationHelper, use 'env.' to align with maven #676 2022-08-30 11:30:15 +02:00
Guillaume Nodet
8f9e59bab2 Fix code syntax 2022-08-30 09:27:18 +02:00
Guillaume Nodet
449e815973 Missing argument for option -D, fixes #662 (#679)
Co-authored-by: 核桃 <hetao@2dfire.com>
2022-08-30 09:14:12 +02:00
Guillaume Nodet
5e59c40453 Ability to configure the daemon storage location, fixes #673 (#678) 2022-08-29 23:15:15 +02:00
Guillaume Nodet
dc69f258be Use interpolation when loading properties, fixes #676 (#677) 2022-08-29 22:12:15 +02:00
Guillaume Nodet
ff7bbbe458 Move BuildProperties to the client (#630) 2022-05-02 13:13:07 +02:00
Guillaume Nodet
eaf0ec3e4a Use err stream when purging logs during a build, fixes #604 (#617) 2022-04-13 10:39:26 +02:00
Guillaume Nodet
62d580b930 Daemon reuse ignores differences in .mvn/jvm.config, fixes #576 (#580) 2022-01-13 10:01:33 +01:00