LibGDXサーバーを起動しようとしています。私はこのサイトからコードをコピーしました:https://github.com/libgdx/libgdx/blob/master/tests/gdx-tests/src/com/badlogic/gdx/tests/net/PingPongSocketExample.javaしかし、私はラインサーバーサーバー= Gdx.net.newServerSocket ... nullポインタ例外を取得しています...何が起こっているのですか?LibGDX:newServerSocketによりnullポインタ例外が発生する
答えて
静的ユーティリティ変数LibGDXは、ほとんどすべてのJava変数と同様に、null
として開始します。これらは、各プラットフォームで異なる実装をサポートするためにすぐに割り当てられるわけではありません(最終的なものでもありません)。たとえば、実際にこの値を割り当てるアプリケーションを起動しない限り、Gdx.net
で参照するNet
の実装はnull
です。
通常のクライアントアプリケーションの一部としてサーバーを使用する場合は、アプリケーションを最初に起動してから、と入力してからサーバーソケットを作成してみてください。別のサーバーアプリケーションが必要な場合は、headless
バックエンドを試してみてください。手動でNet
インスタンスを作成することもできます(例:new HeadlessNet().newServerSocket(...)
またはnew AndroidNet().newServerSocket(...)
)。
Net
ほとんどのプラットフォームでは、実装は基本的に単純なステートレスなファクトリです。そのため、いくつかのインスタンスを用意しても問題ありません。手動でNet
インスタンスを作成し、を次に作成してもを作成しても問題はありません。
ありがとう、これは理にかなっています!しかし、今私は別の問題を抱えています。私のサーバークラスでは、LwjglNetをインポートできません。実行しようとすると、Gradleはパッケージcom.badlogic.gdx.backends.lwjglが存在しないと言います。ただし、別のクラスでインポートしようとすると、正常に動作します。ビルドの設定に問題があると思われます。 – TAsk
おそらくこのクラスを 'core'プロジェクトにインポートしようとしています。コアには、他のプラットフォームで使用されていた抽象的な依存性だけがあります。 'LwjglNet'はデスクトッププラットフォーム特有のクラスです。コアプロジェクトにはこの依存関係はありません。['gdx-backend-headless'](http://mvnrepository.com/artifact/com.badlogicgames.gdx/gdx-backend-headless)と別のプロジェクトを作ることをお勧めします。サーバーアプリケーションが必要な場合 – JustACluelessNewbie
NPEの問題を解決するにはいくつかの方法がありますが、達成しようとしていることを知ることは役に立ちます。サーバーソケットの作成がクライアントアプリケーションのほとんどすべての場合、アプリケーションが完全に作成されるまで待つだけで、クロスプラットフォームAPIには 'Gdx.net'を使用することができます。別の "グローバル"サーバが必要な場合は、ヘッドレスバックエンドを試してください。 – JustACluelessNewbie
- 1. インテントを扱うときにNULLポインタ例外が発生する
- 2. データベースを開くときにNullポインタ例外が発生する
- 3. コードの実行中にNULLポインタ例外が発生する
- 4. クエリの更新SQLiteでNULLポインタの例外が発生する
- 5. Webサービスでnullポインタ例外が発生する
- 6. ここでnullポインタ例外が発生しますか?
- 7. データベースに挿入するときにNULLポインタ例外が発生する
- 8. nullポインタ例外
- 9. NULLポインタ例外
- 10. groovy taskdefでantプロパティにアクセスするとNULLポインタ例外が発生する
- 11. 画像を描画するときにnullポインタの例外が発生する
- 12. eclipseでaxis2を設定中にJavaのNULLポインタ例外が発生する
- 13. 関数呼び出し中にnullポインタ例外が発生する
- 14. SourceDataLineへの書き込み中にNULLポインタ例外が発生する
- 15. JavaでJmeterテストを実行中にNullポインタ例外が発生する
- 16. Javaのnullポインタ例外が
- 17. NULLポインタ例外参照が
- 18. openOrCreateDatabaseがnullポインタ例外
- 19. nullポインタの例外
- 20. nullポインタ例外JSF
- 21. getcookies()nullポインタ例外
- 22. アンドロイド:NULLポインタ例外
- 23. C++マクロによるNULLポインタの発生
- 24. nullポインタ例外ブラックベリーに
- 25. 私のオブジェクトはnullではありませんが、NULLポインタの例外が発生しています
- 26. nullポインタ例外です。
- 27. Androidドロワのレイアウトでnullポインタ例外が発生する可能性があります
- 28. javaサーブレットのnullポインタ例外
- 29. ParseJSON中のNULLポインタ例外
- 30. Androidスクリーンショットアプリ - nullポインタ例外
正確な例外とLibGDXのバージョンを投稿できますか? 'AndroidNet'はあなたが投稿したメソッドからnullを返すことはありません。アプリケーションが既に起動しているので、起動してもよろしいですか? – JustACluelessNewbie
ああ、問題がある、私は全くアプリケーションを始めていない...:P意味をなさない。 – TAsk
'Gdx.net'はアプリケーションを起動しない限りヌルです。単にネットワーキング機能を使いたいのであれば、' new LwjglNet()。newServerSocket(...) 'のように' Net'実装オブジェクトを手作業で作成してみてください。 – JustACluelessNewbie