1

私は現在 Java での開発を学んでおり、他のユーザーが自分のプログラムにインポートして使用できる Java クラスの作成に興味があります。はい、サンプル クラスが単純でばかげていることはわかっていますが、概念を学び、人々がプロジェクトにインポートできるより複雑なクラスを作成したいと考えています。

私は単純な「Logger」クラスを作成しました。このクラスは、呼び出されたときにコンソールとテキスト ファイルの両方にテキストを記録して読みやすくします。次のコマンドを使用して、このクラスを呼び出すことができます...

Logger Logger = new Logger();
Logger.create();
Logger.log("This text will be logged to the console and log.log");

Loggerクラスについては、以下を参照してください。

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class Logger {
        FileWriter fw;
        BufferedWriter br;
        File file = new File("log.log");
        boolean fileExists = file.exists();
        public void log(String message) {
            try {
                fw = new FileWriter(file, true);
                br = new BufferedWriter(fw);
                Calendar cal = Calendar.getInstance();

                int hour = cal.get(Calendar.HOUR_OF_DAY);
                if(hour > 12)
                    hour = hour - 12;

                int minute = cal.get(Calendar.MINUTE);
                int second = cal.get(Calendar.SECOND);
                int millis = cal.get(Calendar.MILLISECOND);

                int ampm = cal.get(Calendar.AM_PM); 
                String ampmString;
                if(ampm == 1)
                    ampmString = "PM";
                else
                    ampmString = "AM";

                String now = String.format("%02d:%02d:%02d.%03d %s", hour, minute, second, millis, ampmString);

                System.out.println(now + " - " + message);
                br.write(now + " - " + message);

                br.newLine();
                br.close();
            } catch (Exception err) {
                System.out.println("Error");
            }

        }
        public void create() {
            try {
                fw = new FileWriter(file, true);
                br = new BufferedWriter(fw);
                SimpleDateFormat sdf = new SimpleDateFormat("MM-dd-YYYY");
                String dateString = sdf.format(new Date());
                if(file.length() != 0)
                    br.newLine();
                System.out.println("Log: " + file.getAbsolutePath());
                br.write("--------------------" + dateString + "--------------------");
                br.newLine();
                br.close();
            } catch (Exception err) {
                System.out.println("Error");
            }
        }
    }

私が抱えている問題は、このクラスを使用するために、作成してこれを使用したいすべてのプロジェクトに追加する必要があることです。インポートを追加して、mydomain.Logger.*;このクラスとそれに含まれるメソッドにアクセスできる方法はありますか?

私の質問、誰でも私の Logger クラスを最も簡単な方法でインポート/使用できるようにする最良の方法は何ですか? 彼らがこれを行うことができるようにするには、どのような手順を踏む必要がありますか?

4

4 に答える 4

0

jar ファイルを作成する必要があります。その後、人々はそれをプロジェクトにインポートできます。

于 2013-07-25T16:56:15.310 に答える