猿问

子进程在读取管道时不工作

我自己正在创建和使用 QGIS 工具插件。


总之,插件需要逻辑来确保用户安装了 Java。


所以我尝试运行 java -version 并在输出时传递输出。


但是,不会打印 Java 版本。


这是我的来源。


try:

    check_process = subprocess.Popen(["java", "-version", "2>&1"], stderr=subprocess.PIPE)

    check_process = check_process.communicate()


    # this is print func

    QgsMessageLog.logMessage(str(check_process), tag="Validating", level=QgsMessageLog.INFO)


except Exception as e:

    QgsMessageLog.logMessage(str(e), tag="Validating", level=QgsMessageLog.INFO)

    return

结果是


2018-09-21T09:36:21 0   (None, '')

如果您有任何想法,我将不胜感激。谢谢你。


炎炎设计
浏览 103回答 1
1回答
随时随地看视频慕课网APP

相关分类

Python
我要回答