6

Geddy MVCフレームワークを評価してnode.jsいますが、奇妙な問題が発生しています。デバッグ時にブレークポイントがヒットすることはありません。

WebStormを使用しnode.jsてデバッグモードで起動しています。

CLIコマンドを使用してGeddyをデバッグモードで起動する方法がわからないため、次のようなブートストラッパーファイルを使用しています。

console.log("Starting server...")
var geddy = require("geddy/bin/cli")
console.log("Server started.")

3行すべてにブレークポイントを設定すると、最後の行だけconsole.logがヒットするので、少なくともブレークポイントとデバッグが正しく機能していることがわかります。

Geddyrequire()は、いくつかの場所にブレークポイントが設定されている私のコントローラーです。これらがヒットすることはありませんが、コントローラーは正しく機能し、HTTPリクエストも適切に処理されます。

Geddyでブレークポイントがヒットしない理由はありますか?他にできることはありますか?

4

4 に答える 4

3

geddyをデバッグする方法に関する情報が記載されたDebuggingWikiPageがあります。

于 2012-10-16T17:47:55.647 に答える
1

これを確認することはできませんでしたが、この問題はclusterが新しいプロセスを生成するが、デバッガーがそれらを認識していないことが原因であると考えています。デバッガーを新しいプロセスに接続する方法が見つかりませんでした。また、デバッグ ポートを開いた状態でそれらを開始できるかどうかもわかりません。

Geddy が使用しclusterているため、この問題を継承しています。

このスレッドは可能な解決策について言及しています: ( GeddyJS を実行しているときに node.js に対して --debug を有効にするにはどうすればよいですか? ) しかし、これは役に立ちませんでした。

于 2012-03-16T00:39:11.940 に答える
1

特に Jetbrains WebStorm または IntelliJ (Node.js プラグインを使用) のデバッグに関する質問に答えるには:

つまり、Heroku または Nodejitsu にデプロイするかのようにアプリをセットアップします。

パッケージ.json

{
  "name": "geddy_todo",
  "version": "0.0.1",
  "dependencies": {
    "geddy": "0.6.x"
  },
  "engines": {
    "node": "0.8.x",
    "npm": "1.1.x"
  }
}

次に2つのオプションがあります

オプション 1. geddy を実行する app.js を作成します。

app.js

var geddy = require('geddy');

geddy.start({
  environment: process.env.GEDDY_ENVIRONMENT || 'production'
});

WebStorm/IntelliJ では、Node.js アプリの実行/デバッグ構成で、環境変数 GEDDY_ENVIRONMENT を追加し、テストを実行する場合はそれを「開発」または「テスト」に設定してください。

オプション 2 geddy クライアントを直接呼び出す

@MiguelMadero は、コメントでこのアイデアについて言及しました。以下を実行するように WS/IJ を設定します。

path/to/geddy/bin/cli.js 
于 2013-01-06T05:41:37.747 に答える
1

Geddy は現在デバッグをサポートしていませんが、機能として追加したいと考えています。

于 2012-04-19T23:13:32.370 に答える