2

Windows 7 の hello world アプリで新しくインストールした Trigger.io を実行すると、次のようになります。

    forge run web


File "C:\Users\john.jesus\AppData\Local\Trigger Toolkit\build-tools\forge\async.py", line 96, in run
result = self._target(*self._args, **self._kwargs)
File "C:\Users\john.jesus\AppData\Local\Trigger Toolkit\build-tools\forge\main.py", line 437, in run
build_to_run=build_to_run,
File "C:\Users\john.jesus\forge-workspace\helloworld\.template\generate_dynamic\customer_goals.py", line 124, in run_app
build_to_run.run()
File "C:\Users\john.jesus\forge-workspace\helloworld\.template\generate_dynamic\build.py", line 337, in run
self._call_with_params(task_method, task_args)
File "C:\Users\john.jesus\forge-workspace\helloworld\.template\generate_dynamic\build.py", line 296, in _call_with_params
return method(self, *params)
File "C:\Users\john.jesus\forge-workspace\helloworld\.template\generate_dynamic\web_tasks.py", line 141, in run_web
env=dict(os.environ, PORT=str(port), FORGE_DEBUG='1'))
File "C:\Users\john.jesus\forge-workspace\helloworld\.template\generate_dynamic\web_tasks.py", line 98, in _node
run_shell(node, *args, **kw)
File "C:\Users\john.jesus\forge-workspace\helloworld\.template\generate_dynamic\utils.py", line 338, in run_shell
raise state.error

TypeError: environment can only contain strings
4

2 に答える 2

0

私はまったく同じ問題を抱えていました-PythonがPOpenの環境辞書のユニコードに対応できないためと思われます。ここにもう少し情報があります:

「env」パラメータに Unicode オブジェクトが含まれている場合、Windows で Popen が失敗するのはなぜですか?

編集しました

C:\Users\mattc\forge-workspace\prototype-app.template\generate_dynamic\module_dynamic\utils.py

そして、304行目を変更して環境変数の受け渡しを削除したので、次のようになりました。

state.proc = lib.PopenWithoutNewConsole(args, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, env=None, preexec_fn=preexec_fn)

その後、forge-web が機能し、実行することができました。ただし、これが「正しい」修正であるかどうかは完全にはわかりませんが、うまくいきます。

于 2013-08-02T09:04:48.807 に答える
-1

ファイルを指すときにスラッシュをエスケープしていますか? 例: C:\folder\filename の代わりに C:\folder\filename?

于 2012-10-23T16:26:00.560 に答える