You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ra...@apache.org on 2018/12/10 12:01:18 UTC
[sling-scriptingbundle-maven-plugin] 13/17: corrected scripts
folder handling
This is an automated email from the ASF dual-hosted git repository.
radu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-scriptingbundle-maven-plugin.git
commit be9341c665134ce797a1ae153f7ac129c60debd0
Author: Radu Cotescu <ra...@apache.org>
AuthorDate: Tue Aug 14 14:06:54 2018 +0200
corrected scripts folder handling
---
.../scripting/maven/plugin/ScriptingMavenPlugin.java | 20 +++++++++++++++-----
1 file changed, 15 insertions(+), 5 deletions(-)
diff --git a/src/main/java/org/apache/sling/scripting/maven/plugin/ScriptingMavenPlugin.java b/src/main/java/org/apache/sling/scripting/maven/plugin/ScriptingMavenPlugin.java
index 422fa36..875133c 100644
--- a/src/main/java/org/apache/sling/scripting/maven/plugin/ScriptingMavenPlugin.java
+++ b/src/main/java/org/apache/sling/scripting/maven/plugin/ScriptingMavenPlugin.java
@@ -38,6 +38,7 @@ import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
+import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -59,15 +60,24 @@ public class ScriptingMavenPlugin extends AbstractMojo
public void execute() throws MojoExecutionException
{
+ File sdFile = new File(scriptsDirectory);
+ if (!sdFile.exists()) {
+ sdFile = new File(project.getBasedir(), scriptsDirectory);
+ if (!sdFile.exists()) {
+ throw new MojoExecutionException("Cannot find file " + scriptsDirectory + ".");
+ }
+ }
+ final AtomicReference<File> scriptsDirectoryReference = new AtomicReference<>();
+ scriptsDirectoryReference.set(sdFile);;
DirectoryScanner scanner = new DirectoryScanner();
- scanner.setBasedir(scriptsDirectory);
+ scanner.setBasedir(sdFile);
scanner.setIncludes("**");
scanner.setExcludes("**/*.class");
scanner.addDefaultExcludes();
scanner.scan();
- List<String> scriptPaths = Stream.of(scanner.getIncludedFiles()).map(path -> new File(scriptsDirectory, path))
- .map(file -> file.getPath().substring((scriptsDirectory + File.pathSeparatorChar).length()))
+ List<String> scriptPaths = Stream.of(scanner.getIncludedFiles()).map(path -> new File(scriptsDirectoryReference.get(), path))
+ .map(file -> file.getPath().substring((scriptsDirectoryReference.get().getPath() + File.pathSeparatorChar).length()))
.collect(Collectors.toList());
@@ -90,7 +100,7 @@ public class ScriptingMavenPlugin extends AbstractMojo
}
else
{
- try (BufferedReader input = new BufferedReader(new FileReader(new File(new File(scriptsDirectory), scriptPath))))
+ try (BufferedReader input = new BufferedReader(new FileReader(new File(scriptsDirectoryReference.get(), scriptPath))))
{
String extend = input.readLine();
@@ -105,7 +115,7 @@ public class ScriptingMavenPlugin extends AbstractMojo
}
else
{
- try (BufferedReader input = new BufferedReader(new FileReader(new File(new File(scriptsDirectory), scriptPath))))
+ try (BufferedReader input = new BufferedReader(new FileReader(new File(scriptsDirectoryReference.get(), scriptPath))))
{
for (String line = input.readLine(); line != null; line = input.readLine())
{