1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import re
from spack.package import *
class Maven(Package):
"""Apache Maven is a software project management and comprehension tool."""
homepage = "https://maven.apache.org/index.html"
url = "https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.3.9/apache-maven-3.3.9-bin.tar.gz"
version("3.8.4", sha256="2cdc9c519427bb20fdc25bef5a9063b790e4abd930e7b14b4e9f4863d6f9f13c")
version("3.6.3", sha256="26ad91d751b3a9a53087aefa743f4e16a17741d3915b219cf74112bf87a438c5")
version("3.6.2", sha256="3fbc92d1961482d6fbd57fbf3dd6d27a4de70778528ee3fb44aa7d27eb32dfdc")
version("3.6.1", sha256="2528c35a99c30f8940cc599ba15d34359d58bec57af58c1075519b8cd33b69e7")
version("3.6.0", sha256="6a1b346af36a1f1a491c1c1a141667c5de69b42e6611d3687df26868bc0f4637")
version("3.5.0", sha256="beb91419245395bd69a4a6edad5ca3ec1a8b64e41457672dc687c173a495f034")
version("3.3.9", sha256="6e3e9c949ab4695a204f74038717aa7b2689b1be94875899ac1b3fe42800ff82")
version("3.0.4", sha256="d35a876034c08cb7e20ea2fbcf168bcad4dff5801abad82d48055517513faa2f")
depends_on("java", type="run")
executables = ["^mvn$"]
@classmethod
def determine_version(cls, exe):
output = Executable(exe)("--version", output=str, error=str)
match = re.search(r"Apache Maven (\S+)", output)
return match.group(1) if match else None
def install(self, spec, prefix):
# install pre-built distribution
install_tree(".", prefix)
|