2015-10-14 33 views
6

Tôi sử dụng Python, PyQt, MySQL và Pyinstaller để xây dựng các ứng dụng exe độc ​​lập. Tôi rất hài lòng với sự linh hoạt của môi trường này. Tuy nhiên ngày nay, tôi tự chạy lệnh độc lập để làm các loại sau đây của các nhiệm vụ:Sử dụng Gradle để xây dựng ứng dụng Python

  1. tập tin tài nguyên xây dựng .qrc cho tất cả các file .qrc trong đường dẫn nguồn
  2. Build .ui file qt-nhà thiết kế cho tất cả các file .ui trong đường dẫn nguồn
  3. Build python exe sử dụng PyInstaller
  4. Xóa các tập tin được tạo ra bởi vì họ lộn xộn thư mục nguồn và không còn cần thiết
  5. Chạy kịch bản tùy chỉnh của riêng tôi để xây dựng một trình cài đặt cho PyInstaller tạo exe

Tôi muốn sử dụng Gradle làm hệ thống xây dựng cho các tác vụ này. Tôi nhận ra Gradle chủ yếu được sử dụng cho các dự án Java, nhưng tôi thấy không có lý do gì mà nó không thể được sử dụng cho các dự án Python.

Có ai có ví dụ làm việc tương tự về tệp gradle.build cho các tác vụ trên không? Hoặc ... cung cấp giúp đỡ trong việc tạo ra một?

Dưới đây là một vài ví dụ chi tiết về các lệnh trên:

C:/Python27/Lib/site-packages/PyQt4/pyuic4.bat $file > ${file_base_name}_ui.py 
C:/Python27/Lib/site-packages/PyQt4/pyrcc4.exe $file -o ${file_base_name}_rc.py 
c:/python27/python.exe c:/pyinstaller/pyinstaller.py --onefile --noconsole --out=$file_path/$file 
+1

Tại sao không chỉ viết một tập lệnh bash đơn giản? – Opal

Trả lời

0

Câu hỏi thú vị! Nó có thể không giúp bạn một cách rõ ràng với tất cả các nhiệm vụ của bạn nhưng có thể cho bạn lời khuyên đúng hướng.

Chỉ cần có một cái nhìn tại gradle Exec task. Với điều đó, bạn có thể chạy các bước xây dựng python cần thiết trong xây dựng gradle của bạn, ví dụ:

task runpy(type:Exec) { 
    workingDir './pydir' 
    commandLine 'python', 'pyinstaller.py' 
} 
Các vấn đề liên quan