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

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

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

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

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

Java

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

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Q&A

0回答

1513閲覧

EclipseでJacksonライブラリを用いてJsonファイルを入出力したい

mobage_sb69er

総合スコア7

JAR

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

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

Java

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

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

0グッド

0クリップ

投稿2020/01/16 11:12

Jacksonライブラリを用いてJava(使用ソフトはEclipse)でJsonファイルの取り扱いをしようとしていますが、調べた手順(プロジェクトのビルド・パスの構築→クラスパス→JARの追加→予めlibファイルに入れてあった3つのjackson-○○○-2.X.X.jarを選択して適用)通りにやってもimport文のエラーメッセージが消えません。
アクセス制限エラーのようですが、どうすればエラーが消えるでしょうか。
また、↑が出来ないとなったとき、JavaでJsonファイルを扱う別の方法があれば教えていただきたいです。

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

The type com.fasterxml.jackson.databind.ObjectMapper is not accessible.

該当のソースコード

Java

1import com.fasterxml.jackson.databind.ObjectMapper;

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

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

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

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

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

退会済みユーザー

退会済みユーザー

2020/01/16 11:46

実行時にクラスパスが設定されてないからでは?
yureighost

2020/01/16 12:29

3つのjarとのことですが、 ObjectMapperクラスが含まれるのは jackson-databind-x.xx.xx.jar です。 それはありますでしょうか。 それとクラスパスという言い方をしていますが、 プロジェクトを右クリック>プロパティー>Javaのビルド・パス>ライブラリ>JARの追加 でjarファイルを登録します。
mobage_sb69er

2020/01/16 13:04

質問するより前に プロジェクトを右クリック>プロパティー>Javaのビルド・パス>ライブラリ>クラスパス>JARの追加 でのJarファイル登録は既にやっていましたがそれでも動きません。しっかりクラスパスの下にJarファイルがあります。 モジュールパスのほうに入れるとかではないですよね?
yureighost

2020/01/16 13:34

こちらでも試してみましたが、その手順でクラスパスの方に適用されていればimportでコンパイルエラーになることはないですね。
mobage_sb69er

2020/01/16 14:30

〜is not accessible.なのでパス自体は通っているけどjarファイルにアクセス権限が無いって感じですかね… アクセス権限の変更とかってできたりしますか?
退会済みユーザー

退会済みユーザー

2020/01/16 22:35

eclipse 4.14 未満で java 13 を起動用につかっていそう・・・ これについての対処はマイナスがつくので回答にしません。
yureighost

2020/01/16 23:01

〜is not accessibleはそのimportに記述されているパッケージ構造のクラスにアクセスできなければ出るエラーで、そのクラスが見えなければ出力されますから、必要なライブラリが設定されてない場合でも出力されます。説明だけ見ると正しい設定に見えるんですが、後はjar解凍してObjectMapperクラスがちゃんと正しくそのパッケージ構造で入ってるかとか確認しないとダメかな。
mobage_sb69er

2020/01/17 05:41 編集

jarファイルにObjectMapper.classがあるのは確認できました。 eclipseは4.14です。java13を起動用に使ってるってのはよくわからないです。 自分で調べたやり方(JARシステム・ライブラリーの実行環境を変える)というやり方で実行環境をJavaSE1.8(java8)に変えたら import com.〜.ObjectMapper; のエラーは消えましたがFilesクラスのreadStringメソッドが使えなくなりました。
yureighost

2020/01/17 05:12

FilesクラスのreadStringメソッドはJava11での追加メソッドだからですね。公式でJacksonは最新2.11でもJDK8でビルドできると書いてますので、あまり新しいJDKは危険かも知れません。
mobage_sb69er

2020/01/17 05:47

そういうことだったんですね。jacksonライブラリ使うなら元々使ってたreadStringメソッドの所を変えないといけないみたいですがなんとかできそうです。何度もありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問