1 |
commit: 6f952b0dfa64958ddd6f391703995c6c97f75bce |
2 |
Author: zongyu <zzy2529420793 <AT> gmail <DOT> com> |
3 |
AuthorDate: Sun Aug 2 02:48:45 2020 +0000 |
4 |
Commit: Miroslav Šulc <fordfrog <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Aug 2 03:21:21 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/java-ebuilder.git/commit/?id=6f952b0d |
7 |
|
8 |
create proper GENTOO_CLASSPATH for java-virtuals/*. |
9 |
|
10 |
Signed-off-by: zongyu <zzy2529420793 <AT> gmail.com> |
11 |
|
12 |
.../org/gentoo/java/ebuilder/maven/MavenEbuilder.java | 16 ++++++++++++++-- |
13 |
1 file changed, 14 insertions(+), 2 deletions(-) |
14 |
|
15 |
diff --git a/src/main/java/org/gentoo/java/ebuilder/maven/MavenEbuilder.java b/src/main/java/org/gentoo/java/ebuilder/maven/MavenEbuilder.java |
16 |
index 810358c..646fc13 100644 |
17 |
--- a/src/main/java/org/gentoo/java/ebuilder/maven/MavenEbuilder.java |
18 |
+++ b/src/main/java/org/gentoo/java/ebuilder/maven/MavenEbuilder.java |
19 |
@@ -33,6 +33,12 @@ public class MavenEbuilder { |
20 |
private static final Pattern PATTERN_TARBALL_NAME |
21 |
= Pattern.compile("^.*/\\$\\{P\\}-sources.((?:\\.tar)\\.\\S+|(?:\\.jar))$"); |
22 |
|
23 |
+ /** |
24 |
+ * Pattern for checking whether the dependency is specifying versions. |
25 |
+ */ |
26 |
+ private static final Pattern PATTERN_EBUILD_VERSIONING |
27 |
+ = Pattern.compile("^[~=<>].*$"); |
28 |
+ |
29 |
/** |
30 |
* Generates ebuild from the collected information at the specified path. |
31 |
* |
32 |
@@ -88,14 +94,20 @@ public class MavenEbuilder { |
33 |
sbCP.append(','); |
34 |
} |
35 |
|
36 |
- final String[] parts = dependency.getSystemDependency(). |
37 |
+ final String ebuildDependency = |
38 |
+ dependency.getSystemDependency(); |
39 |
+ |
40 |
+ final String[] parts = ebuildDependency. |
41 |
replaceAll(".*/", ""). |
42 |
replaceAll("\\[.*\\]", ""). |
43 |
split(":"); |
44 |
String pn = parts[0].replaceAll("-r\\d+$", ""); |
45 |
|
46 |
if (parts.length == 2) { |
47 |
- pn = pn.substring(0, pn.lastIndexOf('-')); |
48 |
+ if (PATTERN_EBUILD_VERSIONING. |
49 |
+ matcher(ebuildDependency).matches()) { |
50 |
+ pn = pn.substring(0, pn.lastIndexOf('-')); |
51 |
+ } |
52 |
|
53 |
if (!parts[1].equals("0")) { |
54 |
pn += "-" + parts[1]; |