فهرست منبع

파이썬애니웨이에서 자동 pip 설치가 안 도는 문제 해결

https://github.com/openNAMU/openNAMU/issues/1733
https://github.com/openNAMU/openNAMU/issues/1713
https://github.com/openNAMU/openNAMU/issues/1695
https://github.com/openNAMU/openNAMU/issues/1656
잉여개발기 (SPDV) 2 سال پیش
والد
کامیت
e9db001d9b
1فایلهای تغییر یافته به همراه11 افزوده شده و 6 حذف شده
  1. 11 6
      route/tool/func.py

+ 11 - 6
route/tool/func.py

@@ -35,13 +35,18 @@ if data_up_date == 1:
         f.write(version_list['beta']['r_ver'])
     
     if platform.system() in ('Linux', 'Windows'):
-        subprocess.check_call([sys.executable, "-m", "pip", "install", "--upgrade", "--user", "-r", "requirements.txt"])
+        python_ver = sys.version_info.major + '.' + sys.version_info.minor
 
-        try:
-            os.execl(sys.executable, os.path.abspath(__file__), *sys.argv)
-        except:
-            print('Error : restart failed')
-            raise
+        run_list = [sys.executable, 'python' + python_ver, 'python3', 'python']
+        for exe_name in run_list:
+            try:
+                subprocess.check_call([exe_name, "-m", "pip", "install", "--upgrade", "--user", "-r", "requirements.txt"])
+                os.execl(exe_name, os.path.abspath(__file__), *sys.argv)
+            except:
+                pass
+        else:
+            print('Error : automatic installation is not supported.')
+            print('Help : try "python3 -m pip install -r requirements.txt"')
     else:
         print('Error : automatic installation is not supported.')
         print('Help : try "python3 -m pip install -r requirements.txt"')