アプリ版:「スタンプのみでお礼する」機能のリリースについて

JAVA初心者です。
あるブループウェアの連携APIを使うことになってしまったのですが、
(そのため現在JAVA入門から勉強しています)
サンプルプログラムを動かすことはできました。

多分新しく作ったクラスにJARファイルを追加?することになると思い、
まず試しにJARファイルを解凍して同じファイル(ファルダ)構成で再びJARファイルを作りました。

コマンド:jar cmf garoon3api\META-INF\MANIFEST.MF garoon3api.jar garoon33api


すると、サンプルプログラムは動きませんでした。

C:\java\garoon>java -cp garoon3api.jar com.cybozu.garoon3.usecase.GetUser -g log
in.ini -i inG.csv -o outG.csv
Exception in thread "main" java.lang.NoClassDefFoundError: com/cybozu/garoon3/us
ecase/GetUser
Caused by: java.lang.ClassNotFoundException: com.cybozu.garoon3.usecase.GetUser
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: com.cybozu.garoon3.usecase.GetUser. Program will
exit.

何がおかしいのでしょうか?
どなたか教えて下さい。
また参考となるHPとかあれば教えてください。


よろしくお願い致します。

A 回答 (2件)

com.cybozu.garoon3.usecase.GetUser が見つからないと言われてますね。


GetUserクラスは正しい場所に配置されてますか?
# jarの中にいるのかな?
# 展開したとき、garoon3api\com\cybozu\garoon3\usecase\GetUser.classができる感じですか?

そもそも、何をされたのかちょっとわからないので、補足願います。
jar展開→なにも変えずにjar再作成したけど、同じコマンドで動作しないってことですか?
それとも、サンプルを例にクラスを作成・配置してjarを作ったんですか?
一度jarの中を見て、フォルダ構成などが変わってないか、
GetUserクラスがちゃんとあるか確認するといいと思います。
(tスイッチだったかな)
    • good
    • 0

「com.cybozu.garoon3.usecase.GetUser」が実行したいclassのようですが、この中にmain(最に実行するもの)が無いといっています。


JARファイルの構成を確認して実行可能なサンプルなのか確認することをお勧めします。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!