教えてください。
JSPのプロジェクトで、自作のクラスを下記のようにimportしています。
import Util;
しかし、次のようなエラーメッセージが表示されてしまい、うまくいきません。
> '.' がありません。
> import Util;
> ^
Util.class というファイルは存在していて、その場所にはCLASSPATHが通っています。
その場所にフォルダをもう一つ作って、その中にUtil.classを移動し、次のように
import test.Util;
などとすると、認識自体はできたらしく次のようなメッセージに変わります。
> test.Util にアクセスできません。
> クラスファイル C:\xxx\classes\WspBean\Util.class は不正です。
> クラスファイル Util に不正なクラスがあります。
> 削除するか、クラスパスの正しいサブディレクトリにあるかを確認してください。
> import WspBean.Util;
> ^
なので、CLASSPATH もとおっていると思うのですが・・
何か原因らしきものや、ほかに調査できる方法などありますでしょうか?
ヒントになるようなことでもいいので、教えていただけると幸いです。
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
おそらく原因は、j2SE1.4 における非互換性が原因ではないでしょうか?
以下 j2se1.4 変更点抜粋 ----------------
コンパイラは、名前のないネームスペースから型をインポートする import 文を拒否するように なりました。以前のバージョンのコンパイラは、こうした import 宣言を、理論的には言語で許可 されていなくても (import 句に現れる型名がスコープ内に存在しないため)、 受け入れていまし た。仕様の中では、import 文の中に単純名を含めることはできないこと、また名前のないネー ムスペースからインポートを行うことはできないことが明示されています。
要約すると、次の構文は有効ではなくなりました。
import SimpleName;
また、名前のないネームスペースからネストしたクラスをインポートする次の文も、有効ではなく なりました。
import ClassInUnnamedNamespace.Nested;
コード内でこうした問題を修正するには、すべてのクラスを、名前のないネームスペースから名 前付きのネームスペースへ移動する必要があります。
参考URL:http://java.sun.com/j2se/1.4/ja/compatibility.html
回答ありがとうございます。
まさにそのとおりで、バージョンを落としてみたらうまくいきました。
確かに導入指示書にも、JDK1.3xと書いてありました・・・
新しいバージョンの方がよいかと思ったのですが、そうでもないこともあるんですね。とほほ・・
大変助かりました、ありがとうございました!
No.1
- 回答日時:
クラスパスが通っている場所は?
c:\xxx\classes?c:\xxx\classes\WspBean?
Utilクラスが置かれているディレクトリは?
Util.javaでpackageを指定していない状況ですか?
それとも何か記述していますか?
JSPファイル内でimport文はどのように記述していますか?
この回答への補足
回答ありがとうございます。早速、補足させていただきますね。
> クラスパスが通っている場所は?
> c:\xxx\classes?c:\xxx\classes\WspBean?
c:\program files\apache group\tomcat 4.1\webapps\xxx\xxx\xxx\classes
になります。実際、Util.classもこのフォルダにあります。
ただ、それ以外にも ZIPファイルやらいろいろなものに CLASSPATH が通っています。
> Utilクラスが置かれているディレクトリは?
上記のとおりのフォルダです。
> Util.javaでpackageを指定していない状況ですか?
> それとも何か記述していますか?
実は、Util.class自体は私自身が作ったわけではなく、.javaファイルもございません。ただ、その導入指示書には確かに上記のフォルダに格納しろと書いてあります。
> JSPファイル内でimport文はどのように記述していますか?
<%@ page import="java.util.*,Util,WspBean.*,java.text.*,java.sql.*" %>
といった具合です。二番目の Util のところで、エラーが発生しております。
何かヒントとなることでもかまいませんので、教えていただければ幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) ColabでのPytorchのエラー 1 2022/11/19 20:51
- その他(プログラミング・Web制作) pythonのWebスクレイピングでfind_allだとurlがNoneに 4 2022/04/17 18:21
- その他(クラウドサービス・オンラインストレージ) Google ColabでGoogleドライブのサブフォルダにファイルを生成する方法 1 2022/10/31 17:37
- PHP アップロードファイルの数に応じてCSSを動的に変更したいのですが、方法がわかりません 3 2023/07/23 21:59
- Ruby 教えてください 2 2023/01/04 17:50
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
- オープンソース Pythonのコードをexe化 1 2023/07/03 08:01
- その他(プログラミング・Web制作) pythonで、tkinterとpillowの組み合わせ 2 2022/08/16 17:42
- その他(プログラミング・Web制作) pythonのプログラムについての質問です。 1 2023/05/26 10:31
- その他(プログラミング・Web制作) Pythonで、データファイルと列名ファイルを1つのファイルにしたいです。 1 2023/07/27 20:29
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
グローバルIPとプライベートIP...
-
配列の重複する値とその個数を...
-
java eclipse 型に解決できません
-
下記の問合せを行うクエリを、P...
-
packageとimport の違いって?
-
dllと同じプロジェクトにする方法
-
「天声人語」をインターネット...
-
コンボボックスのマウスホイー...
-
Excelでクラス分け表を作成した...
-
自作のクラスファイルがインポ...
-
IPアドレスのクラスAを取得して...
-
main()を持つクラスが2つ以上...
-
VBソースからクラス仕様書作成
-
サーブレット実行時のエラー
-
どこからも呼ばれていない無意...
-
C#で OpenSSLで3DES
-
VBAもしくはVB6:クラスの中で...
-
フォームの呼び出しについて
-
BSアンテナのサイズ(札幌)に...
-
河合塾のクラス分けについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
河合塾のクラス分けについて
-
同じクラスにならない確率を教...
-
3年間同じクラスになる確率
-
「天声人語」をインターネット...
-
グローバルIPとプライベートIP...
-
配列の重複する値とその個数を...
-
java eclipse 型に解決できません
-
同一パッケージにあるクラスが...
-
私はクラスLINEにまだ入れてな...
-
老い先短い ジジィ が ふと 思う...
-
自作のクラスファイルがインポ...
-
どこからも呼ばれていない無意...
-
main()を持つクラスが2つ以上...
-
数学の計算問題。 3年間同じク...
-
クラス見てから 女の子5人 ネタ...
-
javaのコンパイルができません...
-
1 つのヘッダファイルに複数の...
-
重複エラーを解決するには
-
IPアドレスの3バイト目の呼び方
-
packageとimport の違いって?
おすすめ情報