Apache Maven core

Overview

Apache Maven

ASF Jira Apache License, Version 2.0, January 2004 Maven Central Jenkins Status Jenkins tests

Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information.

If you think you have found a bug, please file an issue in the Maven Issue Tracker.

Documentation

More information can be found on Apache Maven Homepage. Questions related to the usage of Maven should be posted on the Maven User List.

Where can I get the latest release?

You can download the release source from our download page.

Contributing

If you are interested in the development of Maven, please consult the documentation first and afterward you are welcome to join the developers mailing list to ask questions or discuss new ideas/features/bugs etc.

Take a look into the contribution guidelines.

License

This code is under the Apache License, Version 2.0, January 2004.

See the NOTICE file for required notices and attributions.

Donations

Do you like Apache Maven? Then donate back to the ASF to support the development.

Quick Build

If you want to bootstrap Maven, you'll need:

  • Java 8+
  • Maven 3.0.5 or later
  • Run Maven, specifying a location into which the completed Maven distro should be installed:
    mvn -DdistributionTargetDir="$HOME/app/maven/apache-maven-4.0.x-SNAPSHOT" clean package
    
Comments
  • MNG-6049: Adds version range result filter behaviour

    MNG-6049: Adds version range result filter behaviour

    The discussion on issue MNG-3092 shows the seriously needs of different kinds of version range resolving in Maven.

    I know about the risk on changing the resolving mechanism in Maven. I always had the backward compatibility in mind, if I have something changed. I added some basic tests for the default version range resolver before I've started with the refactoring.

    The idea behind is the DependencySelector suggested by @jvanzyl in comment:

    So allow a pluggable DependencySelector to Aether is the answer here. But we need to find a way to expose it.

    But without compromise the dependency resolving algorithm itself.

    This pull request contains the basic tests and a less invasive solution based on a filter that works on resolved version range results.

    The actual version range resolving algorithm wasn't changed and the internal used default filter implementation don't filter anything.

    The goal: Provide a hook for Maven extensions/plugins to change the list of resolved version range results as required.

    These changes are only placed in maven-aether-provider.

    opened by barthel 71
  • [MNG-7090] mvnDebug socket binds on 0.0.0.0

    [MNG-7090] mvnDebug socket binds on 0.0.0.0

    Submitted by: Guillaume Dufour

    Following this checklist to help us incorporate your contribution quickly and easily:

    • [x] Make sure there is a JIRA issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes.
    • [x] Each commit in the pull request should have a meaningful subject line and body.
    • [x] Format the pull request title like [MNG-XXX] - Fixes bug in ApproximateQuantiles, where you replace MNG-XXX with the appropriate JIRA issue. Best practice is to use the JIRA issue title in the pull request title and in the first line of the commit message.
    • [x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
    • [x] Run mvn clean verify to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
    • [x] You have run the Core IT successfully.

    If your pull request is about ~20 lines of code you don't need to sign an Individual Contributor License Agreement if you are unsure please ask on the developers list.

    To make clear that you license your contribution under the Apache License Version 2.0, January 2004 you have to acknowledge this by using the following check-box.

    opened by Dufgui 43
  • [MNG-5738] Addition of command line flag '--legacy-reactor-resolution'.

    [MNG-5738] Addition of command line flag '--legacy-reactor-resolution'.

    See http://jira.codehaus.org/browse/MNG-5738

    This pull request will add a new command line flag '--legacy-reactor-resolution' to Maven to allow disabling workspace resolution. The name was choosen to be consistent with '--legacy-local-repositoy'.

    opened by ChristianSchulte 43
  • [MNG-6802] Fix bug in FileProfileActivator

    [MNG-6802] Fix bug in FileProfileActivator

    FileProfileActivator changes FileProfileActivator.exists which lets flattened resolveCiFriendliesOnly depending fail activating profile.

    Problem

    The root of the problem that FileProfileActivator interpolates path value and rawModel is updated here and becomes not raw anymore.

    It affects i.e. flatten-maven-plugin

    Solution

    FileProfileActivator has to have an absolute path to check if a file exists but shouldn't update Profile.

    On the other side DefaultModelBuilder needs to have interpolated profiles to build an effective model. To interpolate profiles, DefaultModelBuilder also needs absolute paths.

    The interpolation logic is needed in two places. That's why I extracted the common logic to ProfileActivationFilePathInterpolator.

    I use it in both places. In FileProfileActivator I only check if the file exists. In DefaultModelBuilder I interpolate profiles.

    I added DefaultModelBuilderFactoryTest#test_pom_changes() to check that getRawModel() is still raw and getEffectiveModel() is interpolated.

    Also, I added FileProfileActivatorTest to show that the activator doesn't update profiles anymore.

    Discussion

    Please, let me know if I can do something else to make this PR accepted.

    Following this checklist to help us incorporate your contribution quickly and easily:

    • [x] Make sure there is a JIRA issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes.
    • [x] Each commit in the pull request should have a meaningful subject line and body.
    • [x] Format the pull request title like [MNG-XXX] - Fixes bug in ApproximateQuantiles, where you replace MNG-XXX with the appropriate JIRA issue. Best practice is to use the JIRA issue title in the pull request title and in the first line of the commit message.
    • [x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
    • [x] Run mvn clean verify to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
    • [ ] You have run the Core IT successfully.

    If your pull request is about ~20 lines of code you don't need to sign an Individual Contributor License Agreement if you are unsure please ask on the developers list.

    To make clear that you license your contribution under the Apache License Version 2.0, January 2004 you have to acknowledge this by using the following check-box.

    opened by dehasi 33
  • Artifact.getPath() and .setPath()

    Artifact.getPath() and .setPath()

    Simplifying usage of Java NIO API (since Java 7), so the calling code does not need to convert to / from Path ON ITS OWN again and again.

    By using default interface methods, this should not imply any side effects to any existing code.

    opened by mkarg 32
  • [MNG-6843] Thread-safe artifacts in MavenProject

    [MNG-6843] Thread-safe artifacts in MavenProject

    Avoids concurrency issues when aggregator plugins are involved. A detailed summary of the problem can be found here: https://github.com/apache/maven/pull/310#issuecomment-617783528

    Might also fix:

    • https://issues.apache.org/jira/browse/MNG-4996
    • https://issues.apache.org/jira/browse/MNG-5750
    • https://issues.apache.org/jira/browse/MNG-5960

    This is an alternative to #310 in which @rfscholte raised concerns whether cloning is the right approach.

    I went with a wrapper and a single ThreadLocal because mutliple TLs would bloat the code and would theoretically increase overhead (haven't measured it, though). I had to be creative with removing empty lines because Checkstyle was complaining about the class exceeding 2000 lines.

    PS: I removed the checklist to avoid noise (checked everything, ICLA is present).

    opened by famod 32
  • [MNG-7432] Resolver session contains non-MavenWorkspaceReader

    [MNG-7432] Resolver session contains non-MavenWorkspaceReader

    Signed-off-by: Christoph Läubrich [email protected]

    Following this checklist to help us incorporate your contribution quickly and easily:

    • [x] Make sure there is a JIRA issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes.
    • [x] Each commit in the pull request should have a meaningful subject line and body.
    • [x] Format the pull request title like [MNG-XXX] SUMMARY, where you replace MNG-XXX and SUMMARY with the appropriate JIRA issue. Best practice is to use the JIRA issue title in the pull request title and in the first line of the commit message.
    • [x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
    • [x] Run mvn clean verify to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
    • [ ] You have run the Core IT successfully.

    If your pull request is about ~20 lines of code you don't need to sign an Individual Contributor License Agreement if you are unsure please ask on the developers list.

    To make clear that you license your contribution under the Apache License Version 2.0, January 2004 you have to acknowledge this by using the following check-box.

    opened by laeubi 31
  • [MNG-6471] during parallel build, ensure to set the thread name to the artifactId

    [MNG-6471] during parallel build, ensure to set the thread name to the artifactId

    Following this checklist to help us incorporate your contribution quickly and easily:

    • [ ] Make sure there is a JIRA issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes.
    • [ ] Each commit in the pull request should have a meaningful subject line and body.
    • [ ] Format the pull request title like [MNG-XXX] - Fixes bug in ApproximateQuantiles, where you replace MNG-XXX with the appropriate JIRA issue. Best practice is to use the JIRA issue title in the pull request title and in the first line of the commit message.
    • [ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
    • [ ] Run mvn clean verify to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
    • [ ] You have run the Core IT successfully.

    If your pull request is about ~20 lines of code you don't need to sign an Individual Contributor License Agreement if you are unsure please ask on the developers list.

    To make clear that you license your contribution under the Apache License Version 2.0, January 2004 you have to acknowledge this by using the following check-box.

    opened by rmannibucau 29
  • [MNG-5457] Added the repository id to show which repository is being …

    [MNG-5457] Added the repository id to show which repository is being …

    I have added the repository id within both the AbstractMavenTransferListener.java & Slf4jMavenTransferListener.java.

    Hopefully, this should fix this issue.

    Please review and let me know of any changes.

    Thanks.

    opened by rajivpjs 25
  • MNG-7395 - Support system-properties in extension.xml

    MNG-7395 - Support system-properties in extension.xml

    We at Tycho have a combination of a core-extension and a build-plugin. What always is a source of confusion, that one is able to define e.g. a <tycho-version> property that could be overridden on the commandline using -D but no such thing exits for the .mvn/extensions.xml

    This makes it also hard to make some regression-testing e.g. to check fast if a certain problem occurs also in the previous version as one always has to take in mind that the .mvn/extensions.xml must be edited by hand.

    For that reason it would help if at least basic interpolation using the "maven-properties" would be possible.

    This PR adds support for having basic interpolation in .mvn/extensions.xml to either:

    1. Specify a (default) version in .mvn/jvm.config
    2. Specify a version on the commandline with mvn -D=some.version=1.2.3

    FYI @mickaelistria @akurtakov

    Following this checklist to help us incorporate your contribution quickly and easily:

    • [x] Make sure there is a JIRA issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes.
    • [x] Each commit in the pull request should have a meaningful subject line and body.
    • [x] Format the pull request title like [MNG-XXX] SUMMARY, where you replace MNG-XXX and SUMMARY with the appropriate JIRA issue. Best practice is to use the JIRA issue title in the pull request title and in the first line of the commit message.
    • [x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
    • [x] Run mvn clean verify to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
    • [ ] You have run the Core IT successfully.

    If your pull request is about ~20 lines of code you don't need to sign an Individual Contributor License Agreement if you are unsure please ask on the developers list.

    To make clear that you license your contribution under the Apache License Version 2.0, January 2004 you have to acknowledge this by using the following check-box.

    opened by laeubi 24
  • [MNG-7129] - Changes in maven core required to support incremental mave…

    [MNG-7129] - Changes in maven core required to support incremental mave…

    Changes in maven core to inject caching extension

    CC @ansip

    Following this checklist to help us incorporate your contribution quickly and easily:

    • [x] Make sure there is a JIRA issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes.
    • [x] Each commit in the pull request should have a meaningful subject line and body.
    • [x] Format the pull request title like [MNG-XXX] - Fixes bug in ApproximateQuantiles, where you replace MNG-XXX with the appropriate JIRA issue. Best practice is to use the JIRA issue title in the pull request title and in the first line of the commit message.
    • [x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
    • [x] Run mvn clean verify to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
    • [x] You have run the Core IT successfully.

    If your pull request is about ~20 lines of code you don't need to sign an Individual Contributor License Agreement if you are unsure please ask on the developers list.

    To make clear that you license your contribution under the Apache License Version 2.0, January 2004 you have to acknowledge this by using the following check-box.

    opened by AlexanderAshitkin 23
  • MNG-7662 - Allow Graphbuilder to use session scoped components

    MNG-7662 - Allow Graphbuilder to use session scoped components

    Following this checklist to help us incorporate your contribution quickly and easily:

    • [x] Make sure there is a JIRA issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes.
    • [x] Each commit in the pull request should have a meaningful subject line and body.
    • [x] Format the pull request title like [MNG-XXX] SUMMARY, where you replace MNG-XXX and SUMMARY with the appropriate JIRA issue.
    • [x] Also format the first line of the commit message like [MNG-XXX] SUMMARY. Best practice is to use the JIRA issue title in both the pull request title and in the first line of the commit message.
    • [x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
    • [x] Run mvn clean verify to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
    • [ ] You have run the Core IT successfully.

    If your pull request is about ~20 lines of code you don't need to sign an Individual Contributor License Agreement if you are unsure please ask on the developers list.

    To make clear that you license your contribution under the Apache License Version 2.0, January 2004 you have to acknowledge this by using the following check-box.

    opened by laeubi 10
  • [MNG-7642] Restore compatibility with flatten-maven-plugin

    [MNG-7642] Restore compatibility with flatten-maven-plugin

    Revert "[MNG-7505] Remove ReportingConverter (#906)" This reverts commit adf89ef63ffca07e490f5cc550f9411bad1a7bd6.

    Following this checklist to help us incorporate your contribution quickly and easily:

    • [ ] Make sure there is a JIRA issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes.
    • [ ] Each commit in the pull request should have a meaningful subject line and body.
    • [ ] Format the pull request title like [MNG-XXX] SUMMARY, where you replace MNG-XXX and SUMMARY with the appropriate JIRA issue.
    • [ ] Also format the first line of the commit message like [MNG-XXX] SUMMARY. Best practice is to use the JIRA issue title in both the pull request title and in the first line of the commit message.
    • [ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
    • [ ] Run mvn clean verify to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
    • [ ] You have run the Core IT successfully.

    If your pull request is about ~20 lines of code you don't need to sign an Individual Contributor License Agreement if you are unsure please ask on the developers list.

    To make clear that you license your contribution under the Apache License Version 2.0, January 2004 you have to acknowledge this by using the following check-box.

    opened by gnodet 5
  • [MNG-7655] maven-plexus-utils and maven-plexus-utils-xml (xml-impl)

    [MNG-7655] maven-plexus-utils and maven-plexus-utils-xml (xml-impl)

    https://issues.apache.org/jira/browse/MNG-7655

    keeping plexus-utils artifactId with org.apache.maven vs org.codehaus.plexus groupId is confusing: let's name it maven-plexus-utils

    and maven-xml-impl is better named maven-plexus-utils-xml, to show that it reimplements plexus-utils' content

    opened by hboutemy 9
  • [MNG-5857] Arguments from command line should override those in .mvn/maven.config (alternative 1)

    [MNG-5857] Arguments from command line should override those in .mvn/maven.config (alternative 1)

    Following this checklist to help us incorporate your contribution quickly and easily:

    • [ ] Make sure there is a JIRA issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes.
    • [ ] Each commit in the pull request should have a meaningful subject line and body.
    • [ ] Format the pull request title like [MNG-XXX] SUMMARY, where you replace MNG-XXX and SUMMARY with the appropriate JIRA issue.
    • [ ] Also format the first line of the commit message like [MNG-XXX] SUMMARY. Best practice is to use the JIRA issue title in both the pull request title and in the first line of the commit message.
    • [ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
    • [ ] Run mvn clean verify to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
    • [ ] You have run the Core IT successfully.

    If your pull request is about ~20 lines of code you don't need to sign an Individual Contributor License Agreement if you are unsure please ask on the developers list.

    To make clear that you license your contribution under the Apache License Version 2.0, January 2004 you have to acknowledge this by using the following check-box.

    opened by michael-o 1
  • [MNG-7559] Fix version comparison (master 4.0.x branch)

    [MNG-7559] Fix version comparison (master 4.0.x branch)

    This PR can be merged, If wanted to port (to 4.0.x) the fix for https://issues.apache.org/jira/browse/MNG-7559 intention is:

    • 1.0.0.RC1 < 1.0.0-RC2
    • ( edr, pfd, etc.) < final, ga, release
    • 9.4.1.jre16 > 9.4.1.jre16-preview

    following semver rules should be encouraged, natural ordering is used without the need to hard code strings, except for hard coded qualifiers 'a', 'b', 'm', 'cr', 'snapshot', 'final', 'ga', 'release', '' and 'sp':

    • alpha = a < beta = b < milestone = m < rc = cr < 'snapshot' < '' = 'final' = 'ga' = 'release' < 'sp'

    the documentation should discourage the usage of 'CR', 'final', 'ga', 'release' and 'SP' qualifiers. Maven Central should begin to reject new artifact using CR and SP qualifiers.


    Following this checklist to help us incorporate your contribution quickly and easily:

    • [x] Make sure there is a JIRA issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes.
    • [x] Each commit in the pull request should have a meaningful subject line and body.
    • [x] Format the pull request title like [MNG-XXX] SUMMARY, where you replace MNG-XXX and SUMMARY with the appropriate JIRA issue.
    • [x] Also format the first line of the commit message like [MNG-XXX] SUMMARY. Best practice is to use the JIRA issue title in both the pull request title and in the first line of the commit message.
    • [x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
    • [ ] Run mvn clean verify to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
    • [ ] You have run the Core IT successfully.

    If your pull request is about ~20 lines of code you don't need to sign an Individual Contributor License Agreement if you are unsure please ask on the developers list.

    To make clear that you license your contribution under the Apache License Version 2.0, January 2004 you have to acknowledge this by using the following check-box.

    opened by sultan 28
Releases(maven-3.8.7)
  • maven-3.8.7(Jan 1, 2023)

    Sub-task

    • [MNG-7019] - Notify also at start when profile is missing

    Bug

    • [MNG-7106] - VersionRange.toString() produces a string that cannot be parsed with VersionRange.createFromVersionSpec() for same lower and upper bounds
    • [MNG-7316] - REGRESSION: MavenProject.getAttachedArtifacts() is read-only
    • [MNG-7352] - org.apache.maven.toolchain.java.JavaToolchainImpl should be public
    • [MNG-7529] - Maven resolver makes bad repository choices when resolving version ranges
    • [MNG-7563] - REGRESSION: User properties now override model properties in dependencies
    • [MNG-7568] - [WARNING] The requested profile "ABCDEF" could not be activated because it does not exist.
    • [MNG-7578] - Building Linux image on Windows impossible (patch incuded)
    • [MNG-7600] - LocalRepositoryManager is created too early
    • [MNG-7621] - Parameter '-f' causes ignoring any 'maven.config' (only on Windows)
    • [MNG-7637] - Possible NPE in MavenProject#hashCode()
    • [MNG-7644] - Fix version comparison where .X1 < -X2 for any string qualifier X

    Improvement

    • [MNG-7590] - Allow configure resolver by properties in settings.xml
    • [MNG-7645] - Implement some #toString() methods

    Task

    • [MNG-7513] - Address commons-io_commons-io vulnerability found in maven latest version
    • [MNG-7634] - Revert MNG-5982 and MNG-7417
    • [MNG-7636] - Partially revert MNG-5868 to restore backward compatibility (see MNG-7316)

    Dependency upgrade

    • [MNG-7506] - Upgrade Maven Wagon to 3.5.2
    • [MNG-7641] - Upgrade Maven Wagon to 3.5.3
    Source code(tar.gz)
    Source code(zip)
  • maven-3.8.6(Jun 17, 2022)

    What's Changed

    • [MNG-7441] 3.8.x Update version of logback by @cstamas in https://github.com/apache/maven/pull/708
    • [MNG-7432] Resolver session contains non-MavenWorkspaceReader by @laeubi in https://github.com/apache/maven/pull/695
    • [MNG-7459] Revert "[3.8.x][MNG-7347] SessionScoped beans should be singletons for a given session" by @gnodet in https://github.com/apache/maven/pull/715
    • [3.8.x] [MNG-7476] Display a warning when an aggregator mojo locks other mojos executions by @gnodet in https://github.com/apache/maven/pull/736

    Full Changelog: https://github.com/apache/maven/compare/maven-3.8.5...maven-3.8.6

    Source code(tar.gz)
    Source code(zip)
  • maven-3.8.5(Mar 15, 2022)

    What's Changed

    • [3.8.x][MNG-7156][MNG-7285] Add locking in MojoExecutor by @gnodet in https://github.com/apache/maven/pull/628
    • [MNG-6326] Make the build fail if core extensions can not be loaded by @gnodet in https://github.com/apache/maven/pull/648
    • [3.8.x][MNG-7347] SessionScoped beans should be singletons for a given session by @gnodet in https://github.com/apache/maven/pull/653
    • [3.8.x][MNG-7386] Make sure the ModelMerger$MergingList can be serialized by @gnodet in https://github.com/apache/maven/pull/656
    • [3.8.x][MNG-7349] Limit relocation warning message to direct dependencies only by @gnodet in https://github.com/apache/maven/pull/657
    • [3.8.x][MNG-6727] Changed expression check to project.version and project.parent.version by @gnodet in https://github.com/apache/maven/pull/670
    • [3.8.x][MNG-7395] - Support system-properties in extension.xml by @laeubi in https://github.com/apache/maven/pull/673

    New Contributors

    • @laeubi made their first contribution in https://github.com/apache/maven/pull/673

    Full Changelog: https://github.com/apache/maven/compare/maven-3.8.4...maven-3.8.5

    Source code(tar.gz)
    Source code(zip)
  • maven-3.8.4(Feb 27, 2022)

    What's Changed

    • [MNG-6302] logging the module count by @rmannibucau in https://github.com/apache/maven/pull/136
    • [MNG-6424] - Upgrade plexus-interpolation to 1.25 by @shemic87 in https://github.com/apache/maven/pull/172
    • Update Jenkins build to use Maven 3.5.4 by @slachiewicz in https://github.com/apache/maven/pull/179
    • [MNG-6473] Update Mockito to 2.21.0 by @slachiewicz in https://github.com/apache/maven/pull/181
    • MNG-6414 Add more Apache license headers to skip downloading license … by @slachiewicz in https://github.com/apache/maven/pull/167
    • [MNG-6479] Upgrade XMLUnit to 2.2.1 by @slachiewicz in https://github.com/apache/maven/pull/183
    • Fixed typo in exception logging by @slachiewicz in https://github.com/apache/maven/pull/170
    • [MNG-6490] Maven fails reporting circular dependency when the depende… by @slachiewicz in https://github.com/apache/maven/pull/188
    • [MNG-6261] - using java File api to compare by @fabcipriano in https://github.com/apache/maven/pull/192
    • MNG-6529 - ProjectBuild.build(projectsList, ...) ignores request.isResolveDependencies() by @mickaelistria in https://github.com/apache/maven/pull/193
    • [MNG-6559] Fix mailing list URL by @johnlinp in https://github.com/apache/maven/pull/230
    • [MNG-6611] Update animal-sniffer-maven-plugin to version 1.17 by @slachiewicz in https://github.com/apache/maven/pull/237
    • [MNG-6405] Fix basedir in MavenProject.deepCopy by @jglick in https://github.com/apache/maven/pull/225
    • [MNG-6655] Add support for "release" qualifier by @michael-o in https://github.com/apache/maven/pull/249
    • Always deploy snapshot from master by @mickaelistria in https://github.com/apache/maven/pull/250
    • [MNG-6665] toolchain.xml file should support environment variables by @MartinKanters in https://github.com/apache/maven/pull/251
    • MNG-6681 dependency type = extension+classifier by @hboutemy in https://github.com/apache/maven/pull/254
    • [MNG-6718] Upgrade to plexus-utils 3.2.1 by @gnodet in https://github.com/apache/maven/pull/271
    • [MNG-6697] New fast model interpolator not using reflection by @gnodet in https://github.com/apache/maven/pull/261
    • [MNG-6713] Fix ExclusionArtifactFilter to respect wildcard exclusions. by @saturnism in https://github.com/apache/maven/pull/269
    • [MNG-6729] StringSearchModelInterpolator introspects objects from Java API by @Tibor17 in https://github.com/apache/maven/pull/275
    • [refactor] use utility method of Objects to simplify code by @caidezhi in https://github.com/apache/maven/pull/284
    • [MNG-6778] - Use https for maven schemaLocations by @cwansart in https://github.com/apache/maven/pull/299
    • MNG-6759: Fix issue where MavenMetadataSource failed to set the right… by @srdo in https://github.com/apache/maven/pull/294
    • MNG-6771 Fix license issues on binary distribution by @eolivelli in https://github.com/apache/maven/pull/297
    • [MNG-7236] The DefaultPluginVersionResolver should cache results for … by @gnodet in https://github.com/apache/maven/pull/531
    • [MNG-7045] Drop CDI API from Maven by @michael-o in https://github.com/apache/maven/pull/540

    New Contributors

    • @rmannibucau made their first contribution in https://github.com/apache/maven/pull/136
    • @shemic87 made their first contribution in https://github.com/apache/maven/pull/172
    • @fabcipriano made their first contribution in https://github.com/apache/maven/pull/192
    • @johnlinp made their first contribution in https://github.com/apache/maven/pull/230
    • @jglick made their first contribution in https://github.com/apache/maven/pull/225
    • @saturnism made their first contribution in https://github.com/apache/maven/pull/269
    • @Tibor17 made their first contribution in https://github.com/apache/maven/pull/275
    • @caidezhi made their first contribution in https://github.com/apache/maven/pull/284
    • @cwansart made their first contribution in https://github.com/apache/maven/pull/299
    • @srdo made their first contribution in https://github.com/apache/maven/pull/294
    • @eolivelli made their first contribution in https://github.com/apache/maven/pull/297

    Full Changelog: https://github.com/apache/maven/commits/maven-3.8.4

    Source code(tar.gz)
    Source code(zip)
Owner
The Apache Software Foundation
The Apache Software Foundation
A maven archetype for EZCloud scaffolding

ezcloud-archetype English Doc 中文文档 A maven archetype for EZCloud scaffolding. ?? Usage create single project Customize the values of the following par

Project-Hephaestus 2 Feb 8, 2022
Apache Maven core

Apache Maven Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can man

The Apache Software Foundation 3.4k Jan 2, 2023
Randomized Testing (Core JUnit Runner, ANT, Maven)

RANDOMIZED TESTING ================== JUnit test runner and plugins for running JUnit tests with pseudo-randomness. See the following for more infor

null 167 Dec 26, 2022
Paper-nms-maven-plugin - A maven plugin for using NMS on paper with Mojang mappings.

paper-nms-maven-plugin A maven plugin for using NMS on paper with Mojang mappings. This plugin will both create the mapped paper dependency and instal

null 56 Dec 28, 2022
Support alternative markup for Apache Maven POM files

Overview Polyglot for Maven is a set of extensions for Maven 3.3.1+ that allows the POM model to be written in dialects other than XML. Several of the

null 828 Dec 17, 2022
Apache Maven artifacts for bootstrapping new open-source projects

OSS Quickstart Apache Maven archetypes for bootstrapping new open-source projects. Think Maven Quickstart Archetype and friends, but more modern, comp

ModiTect 49 Dec 31, 2022
Oryx 2: Lambda architecture on Apache Spark, Apache Kafka for real-time large scale machine learning

Oryx 2 is a realization of the lambda architecture built on Apache Spark and Apache Kafka, but with specialization for real-time large scale machine l

Oryx Project 1.8k Dec 28, 2022
Oryx 2: Lambda architecture on Apache Spark, Apache Kafka for real-time large scale machine learning

Oryx 2 is a realization of the lambda architecture built on Apache Spark and Apache Kafka, but with specialization for real-time large scale machine l

Oryx Project 1.7k Mar 12, 2021
Oryx 2: Lambda architecture on Apache Spark, Apache Kafka for real-time large scale machine learning

Oryx 2 is a realization of the lambda architecture built on Apache Spark and Apache Kafka, but with specialization for real-time large scale machine l

Oryx Project 1.8k Dec 28, 2022
Equivalent Exchange 3 Apache 2 Equivalent Exchange 3 pahimar Equivalent-Exchange-3. Mods for Minecraft. License: Apache 2 , .

Welcome to Equivalent Exchange 3! All versions are available here Minecraft Forums page Compiling EE3 - For those that want the latest unreleased feat

Rob Davis 709 Dec 15, 2022
Apache Solr is an enterprise search platform written in Java and using Apache Lucene.

Apache Solr is an enterprise search platform written in Java and using Apache Lucene. Major features include full-text search, index replication and sharding, and result faceting and highlighting.

The Apache Software Foundation 630 Dec 28, 2022
FLiP: StreamNative: Cloud-Native: Streaming Analytics Using Apache Flink SQL on Apache Pulsar

StreamingAnalyticsUsingFlinkSQL FLiP: StreamNative: Cloud-Native: Streaming Analytics Using Apache Flink SQL on Apache Pulsar Running on NVIDIA XAVIER

Timothy Spann 5 Dec 19, 2021
Apache Cayenne is an open source persistence framework licensed under the Apache License

Apache Cayenne is an open source persistence framework licensed under the Apache License, providing object-relational mapping (ORM) and remoting services.

The Apache Software Foundation 284 Dec 31, 2022
Spark-Crawler: Apache Nutch-like crawler that runs on Apache Spark.

Sparkler A web crawler is a bot program that fetches resources from the web for the sake of building applications like search engines, knowledge bases

USC Information Retrieval & Data Science 396 Dec 17, 2022
Google core libraries for Java

Guava: Google Core Libraries for Java Guava is a set of core Java libraries from Google that includes new collection types (such as multimap and multi

Google 46.5k Jan 1, 2023
Core part of Jackson that defines Streaming API as well as basic shared abstractions

Overview This project contains core low-level incremental ("streaming") parser and generator abstractions used by Jackson Data Processor. It also incl

FasterXML, LLC 2.1k Jan 1, 2023
Stanford CoreNLP: A Java suite of core NLP tools.

Stanford CoreNLP Stanford CoreNLP provides a set of natural language analysis tools written in Java. It can take raw human language text input and giv

Stanford NLP 8.8k Jan 9, 2023