質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
JAR

JAR(又はJava ARchive)はコンパイルされた複数のJavaバイトコード及び関連ファイルのリソースを一つのファイルに統合したものです。JARファイルはZIPファイルのフォーマットで構築されています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

Q&A

解決済

2回答

11178閲覧

Javaによるjarファイルのimport方法

kingg

総合スコア11

JAR

JAR(又はJava ARchive)はコンパイルされた複数のJavaバイトコード及び関連ファイルのリソースを一つのファイルに統合したものです。JARファイルはZIPファイルのフォーマットで構築されています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

0グッド

0クリップ

投稿2018/02/18 09:32

編集2018/02/19 08:57

前提・実現したいこと

javac Sample1a.java をエラーなく実行したいです。(恐らくJAVAの導入に関する質問)

Javaでグラフ(有向グラフ・無向グラフなど)を出力するプログラムを作ろうとしています。
調べているとJUNGJGraphTというライブラリを使えばできそうだと分かりました。
JUNGの最新版であるjung2-2_0_1.zipをダウンロード・解凍してjarファイルを取得しました。
このjarファイルを使いたいのですがどうすればいいか分かりません。
正しいディレクトリに移動させてリンクを貼れば出来るかと思いますが、
Javaに関しては昨日から使い始めたので良く分かっていません。
以下のことについて教えてほしいです。

・解決方法(jarファイルはどこにおくべきか)
・importの.と.の間に入る文字はディレクトリを意味しているのか
・もしroot下に移す場合、どこに移動させればよいか
よろしくお願いします。

なお、Javaのインストールは以下のサイトを参考にしました。
Javaのインストール参考URL:https://qiita.com/sundaymornings/items/0f0fd7ab775d0dad42e5

※類似する質問が既にあるならば申し訳ないです。その質問のURLを貼っていただけると嬉しいです。

※java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

発生している問題・エラーメッセージ

javac Sample1a.java を実行すると以下のエラーメッセージが出ます。

/home/user/tgz_house/jung_jar/Sample1a.java:3: error: The import edu cannot be resolved
import edu.uci.ics.jung.graph.Graph;
^^^
/home/user/tgz_house/jung_jar/Sample1a.java:4: error: The import edu cannot be resolved
import edu.uci.ics.jung.graph.UndirectedSparseGraph;
^^^
/home/user/tgz_house/jung_jar/Sample1a.java:9: error: Graph cannot be resolved to a type
Graph<Integer,Integer> graph = new UndirectedSparseGraph<Integer,Integer>();
^^^^^
/home/user/tgz_house/jung_jar/Sample1a.java:9: error: UndirectedSparseGraph cannot be resolved to a type
Graph<Integer,Integer> graph = new UndirectedSparseGraph<Integer,Integer>();
^^^^^^^^^^^^^^^^^^^^^
4 problems (4 errors)

該当のソースコード

Java

1// All Rights Reserved. Copyright (C) Kazuo Misue (2010) 2 3import edu.uci.ics.jung.graph.Graph; 4import edu.uci.ics.jung.graph.UndirectedSparseGraph; 5 6public class Sample1a { 7 8 public static void main(String[] args) { 9 Graph<Integer,Integer> graph = new UndirectedSparseGraph<Integer,Integer>(); 10 graph.addVertex(1); 11 graph.addVertex(2); 12 graph.addVertex(3); 13 graph.addEdge(101, 1, 2); 14 graph.addEdge(102, 2, 3); 15 System.out.println("Graph G = " + graph.toString()); 16 } 17 18}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

unz.hori

2018/02/19 08:34

javaのバージョンを明記してください。
unz.hori

2018/02/19 09:12

/home/user/tgz_house/jung_jarへcdしてjavac -classpath .\jung-graph-impl-2.0.1.jar Sample1a.javaを実行すると、UndirectedSparseGraphのエラーは消えるはずですが...
unz.hori

2018/02/19 09:13

/home/user/tgz_house/jung_jarにjung-graph-impl-2.0.1.jarが配置されていることが前提です。
unz.hori

2018/02/19 09:14

linuxなんで、javac -classpath ./jung-graph-impl-2.0.1.jar Sample1a.javaですか
guest

回答2

0

クラスパスの設定方法 を読みましょう。
公式ドキュメントは必ず目を通しましょう

投稿2018/02/18 09:35

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kingg

2018/02/19 05:35

回答ありがとうございます。 オプションのclasspathで使用するjarファイルを指定すれば良いようですね。 javac -classpath /home/user/tgz_house/jung_jar/jung-graph-impl-2.0.1.jar Sample1a.java jung-graph-impl-2.0.1.jar内にはedu/uci/ics/jung/graph/UndirectedSparseGraph.classが存在し、エラーが減ると思いましたが結果は変わりませんでした。 これはimportの内容を変更するべきということでしょうか? (Sample1a.javaは以下のサイトから取ってきたものです) URL:http://www.cs.tsukuba.ac.jp/~misue/open/tutorial/jung2/step2.html
guest

0

自己解決

回答下さった方ありがとうございました。
諦めてEclipseを使おうとインストールした後に試すとエラーなくコンパイルできました。
何らかのパスが正しく通ってなかったものだと思います。(何が原因かは不明)

投稿2018/02/20 07:22

kingg

総合スコア11

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問