Commit 3a7fbbcd authored by liaozan's avatar liaozan 🏀

fix: system properties

parent 41ea92c8
......@@ -26,6 +26,10 @@ public class MavenUtils {
private static final File SETTINGS_FILE = new File(MavenCli.USER_MAVEN_CONFIGURATION_HOME, "settings.xml");
static {
System.getProperties().setProperty(MULTIMODULE_PROJECT_DIRECTORY, "$M2_HOME");
}
public static void install(String workDirectory) {
log.info("Prepare to install archive of : {}", workDirectory);
MavenCli mavenCli = new MavenCli();
......@@ -45,8 +49,6 @@ public class MavenUtils {
String[] args = getArchetypeGenerateArgs(param, settingsFile.getAbsolutePath(), outputDirectory);
System.getProperties().setProperty(MULTIMODULE_PROJECT_DIRECTORY, "$M2_HOME");
mavenCli.doMain(args, null, System.out, System.err);
log.info("Generate archetype project at {}", outputDirectory);
......
package com.schbrain.archetype.initializer.runner;
import cn.hutool.core.io.FileUtil;
import cn.hutool.system.SystemUtil;
import com.schbrain.archetype.initializer.maven.MavenUtils;
import lombok.extern.slf4j.Slf4j;
......@@ -26,8 +27,19 @@ public class ArchetypePreparer implements ApplicationRunner {
@Override
public void run(ApplicationArguments args) throws GitAPIException {
File archetypeTemplateDirectory = createArchetypeDirectory();
checkoutArchetype(archetypeTemplateDirectory);
MavenUtils.install(archetypeTemplateDirectory.getAbsolutePath());
}
private File createArchetypeDirectory() {
String tempDir = SystemUtil.getUserInfo().getTempDir();
File archetypeTemplateDirectory = new File(tempDir, "archetype");
FileUtil.del(archetypeTemplateDirectory);
return archetypeTemplateDirectory;
}
private void checkoutArchetype(File archetypeTemplateDirectory) throws GitAPIException {
Git git = Git.cloneRepository()
.setTagOption(TagOpt.FETCH_TAGS)
.setNoCheckout(false)
......@@ -39,7 +51,6 @@ public class ArchetypePreparer implements ApplicationRunner {
CheckoutCommand checkoutCommand = git.checkout().setName("archetype").setCreateBranch(true);
Ref ref = checkoutCommand.call();
log.info("Success checkout archetype branch: {} of {}", ref.getName(), ARCHETYPE_REPO_URL);
MavenUtils.install(archetypeTemplateDirectory.getAbsolutePath());
}
}
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment