mirror of
https://github.com/RubyMetric/chsrc
synced 2025-09-09 11:35:51 +08:00
parent
f17a1c70b8
commit
5aeb706796
@ -29,14 +29,15 @@ def_sources_n(pl_java);
|
||||
|
||||
|
||||
void
|
||||
pl_java_check_cmd (bool *maven_exist, bool *gradle_exist)
|
||||
pl_java_check_cmd (bool *maven_exist, bool *gradle_exist, bool *maven_daemon_exist)
|
||||
{
|
||||
*maven_exist = chsrc_check_program ("mvn");
|
||||
*gradle_exist = chsrc_check_program ("gradle");
|
||||
*gradle_exist = chsrc_check_program ("mvnd");
|
||||
|
||||
if (! *maven_exist && ! *gradle_exist)
|
||||
if (! *maven_exist && ! *gradle_exist && ! *maven_daemon_exist)
|
||||
{
|
||||
chsrc_error ("maven 与 gradle 命令均未找到,请检查是否存在其一");
|
||||
chsrc_error ("maven(maven-daemon) 与 gradle 命令均未找到,请检查是否存在其一");
|
||||
exit (Exit_UserCause);
|
||||
}
|
||||
}
|
||||
@ -54,13 +55,33 @@ pl_java_find_maven_config ()
|
||||
}
|
||||
|
||||
|
||||
char *
|
||||
pl_java_find_maven_daemon_config ()
|
||||
{
|
||||
char *buf = xy_run ("mvnd -v", 2);
|
||||
char *maven_home = xy_str_delete_prefix (buf, "Maven daemon home: ");
|
||||
maven_home = xy_str_strip (maven_home);
|
||||
|
||||
char *maven_config = xy_normalize_path (xy_2strjoin (maven_home, "/conf/settings.xml"));
|
||||
return maven_config;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
pl_java_getsrc (char *option)
|
||||
{
|
||||
bool maven_exist, gradle_exist;
|
||||
pl_java_check_cmd (&maven_exist, &gradle_exist);
|
||||
char *maven_config = pl_java_find_maven_config ();
|
||||
chsrc_note2 (xy_2strjoin ("请查看 ", maven_config));
|
||||
bool maven_exist, gradle_exist, maven_daemon_exist;
|
||||
pl_java_check_cmd (&maven_exist, &gradle_exist, &maven_daemon_exist);
|
||||
if (maven_exist)
|
||||
{
|
||||
char *maven_config = pl_java_find_maven_config ();
|
||||
chsrc_note2 (xy_2strjoin ("请查看 ", maven_config));
|
||||
}
|
||||
if(maven_daemon_exist)
|
||||
{
|
||||
char *maven_config = pl_java_find_maven_daemon_config ();
|
||||
chsrc_note2 (xy_2strjoin ("请查看 ", maven_config));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -70,8 +91,8 @@ pl_java_getsrc (char *option)
|
||||
void
|
||||
pl_java_setsrc (char *option)
|
||||
{
|
||||
bool maven_exist, gradle_exist;
|
||||
pl_java_check_cmd (&maven_exist, &gradle_exist);
|
||||
bool maven_exist, gradle_exist, maven_daemon_exist;
|
||||
pl_java_check_cmd (&maven_exist, &gradle_exist, &maven_daemon_exist);
|
||||
|
||||
chsrc_yield_source_and_confirm (pl_java);
|
||||
|
||||
@ -85,6 +106,16 @@ pl_java_setsrc (char *option)
|
||||
println (file);
|
||||
}
|
||||
|
||||
if (maven_daemon_exist)
|
||||
{
|
||||
char *file = xy_str_gsub (RAWSTR_pl_java_maven_config, "@1@", source.mirror->code);
|
||||
file = xy_str_gsub (file, "@name@", source.mirror->name);
|
||||
file = xy_str_gsub (file, "@url@", source.url);
|
||||
char *maven_config = pl_java_find_maven_daemon_config ();
|
||||
chsrc_note2 (xy_strjoin (3, "请在 maven 配置文件 ", maven_config, " 中添加:"));
|
||||
println (file);
|
||||
}
|
||||
|
||||
if (gradle_exist)
|
||||
{
|
||||
if (maven_exist) br();
|
||||
@ -93,6 +124,7 @@ pl_java_setsrc (char *option)
|
||||
println (file);
|
||||
}
|
||||
|
||||
|
||||
chsrc_determine_chgtype (ChgType_Manual);
|
||||
chsrc_conclude (&source);
|
||||
}
|
||||
@ -122,4 +154,4 @@ pl_java_feat (char *option)
|
||||
return f;
|
||||
}
|
||||
|
||||
def_target_gsrf(pl_java);
|
||||
def_target_gsrf(pl_java);
|
@ -36,7 +36,7 @@ static const char
|
||||
*pl_rust_cargo[] = {"rust", "cargo", "crate", "crates", NULL, t(&pl_rust_cargo_target)},
|
||||
*pl_rust_rustup[]= {"rustup", NULL, t(&pl_rust_rustup_target)},
|
||||
|
||||
*pl_java [] = {"java", "maven", "mvn", "gradle", NULL, t(&pl_java_target)},
|
||||
*pl_java [] = {"java", "maven", "mvn", "mvnd", "maven-daemon", "maven-mvnd", "gradle", NULL, t(&pl_java_target)},
|
||||
*pl_clojure[]= {"clojure","clojars","cloj", "lein", NULL, t(&pl_clojure_target)},
|
||||
|
||||
*pl_dart [] = {"dart", "pub", NULL, t(&pl_dart_target)},
|
||||
@ -181,4 +181,4 @@ available_mirrors[] = {
|
||||
|
||||
};
|
||||
|
||||
/* End Target Matrix */
|
||||
/* End Target Matrix */
|
Loading…
x
Reference in New Issue
Block a user