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

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

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

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

Q&A

1回答

1276閲覧

mavenを用いてjacksonをつかいたい

退会済みユーザー

退会済みユーザー

総合スコア0

Java

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

0グッド

0クリップ

投稿2018/06/10 14:10

編集2018/06/10 14:44

javaのmavenについて質問です。

今回勉強も兼ねて、jacksonを使ってみようと思ってやっています。mavenのpom.xmlに

参考サイト

のサイトにある、mavenの欄をコピーして書きました。こうすることで勝手にセントラルレポジトリ?から持ってこられるのかなと思ってました。このままmvn compile,packageを行い実行すると、obujectmapper(今回使いたいクラス)がありませんといまれました。これはどうすればよいですか?

lang

1package com.mycompany.app; 2 3import java.util.*; 4import java.io.*; 5import com.fasterxml.jackson.databind.ObjectMapper; 6 7 8public class App 9{ 10 public static void main( String[] args )throws IOException 11 { 12 File filename = new File("/work/sample.json"); 13 HashMap<String,Object> map = 14 new ObjectMapper().readValue(filename, HashMap.class); 15 16 for(Map.Entry<String, Object> entry : map.entrySet()){ 17 System.out.println(entry.getKey()); 18 System.out.println(entry.getValue()); 19 } 20 } 21} 22

lang

1<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 2 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 3 <modelVersion>4.0.0</modelVersion> 4 <groupId>com.mycompany.app</groupId> 5 <artifactId>my-app</artifactId> 6 <packaging>jar</packaging> 7 <version>1.0-SNAPSHOT</version> 8 <name>my-app</name> 9 <url>http://maven.apache.org</url> 10 <dependencies> 11 <dependency> 12 <groupId>junit</groupId> 13 <artifactId>junit</artifactId> 14 <version>3.8.1</version> 15 <scope>test</scope> 16 </dependency> 17 <dependency> 18 <groupId>com.fasterxml.jackson.core</groupId> 19 <artifactId>jackson-databind</artifactId> 20 <version>2.9.5</version> 21 </dependency> 22</dependencies> 23<properties> 24 <maven.compiler.source>1.6</maven.compiler.source> 25 <maven.compiler.target>1.6</maven.compiler.target> 26 </properties> 27</project>

エラーの内容

java -cp target/my-app-1.0-SNAPSHOT.jar com.mycompany.app.App Exception in thread "main" java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ObjectMapper at com.mycompany.app.App.main(App.java:17) Caused by: java.lang.ClassNotFoundException: com.fasterxml.jackson.databind.ObjectMapper at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:185) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496) ... 1 more

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

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

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

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

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

m.ts10806

2018/06/10 14:34

参考サイト 404になってますが大丈夫でしょうか
退会済みユーザー

退会済みユーザー

2018/06/10 14:44

すみません、なおしました。参考サイトと書いてますがpom.xmlをコピーしただけです。
guest

回答1

0

mavenを使っているのでしたら、コンパイルもmavenから実行したものを使い、必要なjarファイルについて同梱されるか、配置されるのかを書いていないのでどちらを選んだかはわかりませんが、自動的に必要なjarファイルを取り込んでコンパイルしますので。

投稿2018/06/11 00:24

編集2018/06/11 00:26
A-pZ

総合スコア12011

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

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

退会済みユーザー

退会済みユーザー

2018/06/11 02:48

実行はエラー欄に書いているものを用いて行いました。必要なjarファイルは.m2はいかをさがしてみたらほしいものがありました。コンパイルをmavenから行ったほうがいいのですか?
A-pZ

2018/06/11 05:19

pom.xmlにコンパイルする際のバージョンを記載していますので、そのほうが良いでしょう。
退会済みユーザー

退会済みユーザー

2018/06/11 13:38

返事遅くなってしまいすみません、やっぱりエラーが出てしまいました。
退会済みユーザー

退会済みユーザー

2018/06/11 13:46

多分実行時にクラスパスがついてないとかその手の話だと思う
退会済みユーザー

退会済みユーザー

2018/06/11 14:00

実行時のクラスパスはこの場合 java -cp target/my-app-1.0-SNAPSHOT.jar com.mycompany.app.App で実行してもエラーがでたのですが間違っているのでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問