summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--meta/model/java.py5
-rw-r--r--meta/run/generate_java.py8
2 files changed, 11 insertions, 2 deletions
diff --git a/meta/model/java.py b/meta/model/java.py
index 4ba551a61f..e5760f8bac 100644
--- a/meta/model/java.py
+++ b/meta/model/java.py
@@ -41,19 +41,22 @@ class JavaVersionMeta(MetaBase):
minor: int
security: int
build: Optional[int] = None
+ buildstr: Optional[str] = None
name: Optional[str] = None
def __str__(self):
ver = f"{self.major}.{self.minor}.{self.security}"
if self.build is not None:
ver = f"{ver}+{self.build}"
+ if self.buildstr is not None:
+ ver = f"{ver}-{self.buildstr}"
return ver
def to_tuple(self):
build = 0
if self.build is not None:
build = self.build
- return (self.major, self.minor, self.security, build)
+ return (self.major, self.minor, self.security, build, self.buildstr)
def __eq__(self, other: Any):
return self.to_tuple() == other.to_tuple()
diff --git a/meta/run/generate_java.py b/meta/run/generate_java.py
index fd32308217..1dd1234213 100644
--- a/meta/run/generate_java.py
+++ b/meta/run/generate_java.py
@@ -148,7 +148,12 @@ def mojang_runtime_to_java_runtime(
mojang_component: MojangJavaComponent,
runtime_os: JavaRuntimeOS,
) -> JavaRuntimeMeta:
- major, _, security = mojang_runtime.version.name.partition("u")
+ major, _, trail = mojang_runtime.version.name.partition("u")
+ security, _, buildstr = trail.partition("-")
+
+ if buildstr == "":
+ buildstr = None
+
if major and security:
version_parts = [int(major), 0, int(security)]
else:
@@ -166,6 +171,7 @@ def mojang_runtime_to_java_runtime(
minor=version_parts[1],
security=version_parts[2],
build=build,
+ buildstr=buildstr,
name=mojang_runtime.version.name,
)
return JavaRuntimeMeta(