Bläddra i källkod

解决Java调用Python脚本,Python其中的repo shell命令提示:repo command not found的问题。在所有shell命令或脚本执行前export环境变量。

JeffWang 3 år sedan
förälder
incheckning
ef89b902be
1 ändrade filer med 7 tillägg och 5 borttagningar
  1. 7 5
      自动编译系统脚本标准化/builder.py

+ 7 - 5
自动编译系统脚本标准化/builder.py

@@ -15,7 +15,7 @@ if len(sys.argv) == 2:
     JSONFILE = sys.argv[1]  # 表示Json参数文件路径;
 if len(sys.argv) == 3:
     SHELLFILE = sys.argv[2]  # 表示Shell脚本文件路径;
-# 输入开始时间;  
+# 输入开始时间;
 print("Start",time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
 
 # 源码路径
@@ -71,14 +71,14 @@ def loadJson():
 
     return True
 
-
 # 不使用重定向;
 def cmdExecute2(cmd, dir=None):
     print(str.format("cmd start:%s, %s") % (cmd, time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())))
     proc = subprocess.Popen(cmd, shell=True, cwd=dir)
+    # 等待完成;
+    proc.wait()
     print(str.format("cmd end:%s, %s") % (cmd, time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())))
 
-
 def cmdExecute(cmd, dir=None):
     print(str.format("cmd start:%s, %s") % (cmd, time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())))
     proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True, cwd=dir)
@@ -87,7 +87,8 @@ def cmdExecute(cmd, dir=None):
     if proc.returncode == 0:
         print(u'cmd finished')
     # 返回执行结果;
-    print(stdout)
+    print("stdout=",stdout)
+    print("stderr=",stderr)
     print(str.format("cmd end:%s, %s") % (cmd, time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())))
     return stdout
 
@@ -114,13 +115,14 @@ def prev_compile():
     commands=None
     if 'sync' in PREV_ARG and PREV_ARG['sync']:
         print("start sync")
-        commands = str.format("cd %s;repo sync") % CODE_DIR
+        commands = str.format("export PATH=$PATH:/bin/git-repo/;cd %s;repo sync") % CODE_DIR
         cmdExecute(commands, CODE_DIR)
     
     # 重新下载;
     commands=[]
     if PREV_ARG['redownload']:
         print("start redownload")
+        commands.append("export PATH=$PATH:/bin/git-repo/")
         commands.append(str.format("cd %s") % CODE_DIR)
         commands.append(str.format("rm -rf !(%s|%s|%s|%s)") % ("builder.py", "arg.json", "51M-CompileScript.sh", "ftp.py"))
         # 已在编译路径中,无须处理;