2

私は現在、rabbitMQ webiste にあるチュートリアルを実行していますが、コマンド プロンプト (Windows7) でプログラムを実行するときに問題が発生しました。

これで、クライアント ライブラリが Eclipse で完全に動作するようになりました。つまり、プロデューサーとコンシューマーなどの間でメッセージを送信できます。しかし、コマンド プロンプトでこのプログラムを実行しようとすると、次のようになります。

Worker.java:1: error: package com.rabbitmq.client does not exist
import com.rabbitmq.client.Channel;
                      ^
Worker.java:2: error: package com.rabbitmq.client does not exist
import com.rabbitmq.client.Connection;
                      ^
Worker.java:3: error: package com.rabbitmq.client does not exist
import com.rabbitmq.client.ConnectionFactory;
                      ^
etc...... etc..... (this list goes on)....

これで、必要なライブラリ (.jar ファイル) の場所がクラスパスに追加されました。コマンドプロンプトで次を使用してコンパイルします。

javac -cp rabbitmq-client.jar Worker.java

しかし、私はまだこれらの問題を抱えています。誰かが助けてくれれば、私はとても感謝しています。

乾杯!

4

2 に答える 2

1

RabbitMQ のサンプル rabbitmq-java-client (Linux マシン上の Netbeans) を実行しようとしたときに、同様の問題が発生しました。Netbeans のコードはパッケージがそこにあると言っていましたが、mnv install または javac を実行すると、次のような大量のエラーが生成されます。

Send.java:11: エラー: パッケージ com.rabbitmq.client が存在しません import com.rabbitmq.client.ConnectionFactory;

ディレクトリの構造を修正して解決しました。それらは次のようになります。

my-app
|-- pom.xml
`-- src
    |-- main
    |   `-- java
    |       `-- com
    |           `-- mycompany
    |               `-- app
    |                   `-- App.java
    `-- test
        `-- java
            `-- com
                `-- mycompany
                    `-- app
                        `-- AppTest.java

参照してください: http://maven.apache.org/guides/getting-started/index.html#How_do_I_make_my_first_Maven_project

Mavenが探しているものと一致すると思います。

また、ポンポンも手作業で作り直しました。サンプル rabbitmq-java-client の pom には、次のすべての情報が欠けています。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

それはちょうど持っています

<?xml version="1.0"?>

参照: https://github.com/rabbitmq/rabbitmq-java-client/blob/master/pom.xml


実際、なぜポスターが Eclipse でこれを行っているのか疑問に思っています。

ここで推測ですが、彼の Worker.java は IED で編集する必要はありません。二人とも同じ過ちを犯したのだろうか。

そうである必要はありません。これらのファイルを使用して、それらを独自のディレクトリに配置するだけです

commons-cli-1.1.jar
commons-io-1.2.jar
rabbitmq-client.jar

それで

javac -cp rabbitmq-client.jar Worker.java

RabbitMQ サーバー ( http://localhost:15672/) を開き、次に

java -cp .:commons-io-1.2.jar:commons-cli-1.1.jar:rabbitmq-client.jar Send

java -cp .:commons-io-1.2.jar:commons-cli-1.1.jar:rabbitmq-client.jar Recv
于 2015-01-21T00:14:28.757 に答える
0

これは、https ://www.rabbitmq.com/tutorials/tutorial-one-java.html からのものです。

Java クライアント ライブラリ

RabbitMQ は、メッセージング用のオープンな汎用プロトコルである AMQP を話します。多くの異なる言語で AMQP 用のクライアントが多数あります。RabbitMQ が提供する Java クライアントを使用します。

クライアント ライブラリ パッケージをダウンロードし、説明に従って署名を確認します。作業ディレクトリに解凍し、解凍したディレクトリから JAR ファイルを取得します。

$ unzip rabbitmq-java-client- bin- .zip $ cp rabbitmq-java-client- bin- /*.jar ./ (RabbitMQ Java クライアントも中央の Maven リポジトリにあり、groupId は com.rabbitmq で、artifactId はamqp クライアント)。

詳細と Java クライアント ライブラリのダウンロードはこちら: http://www.rabbitmq.com/java-client.html

于 2014-11-28T18:57:05.580 に答える