-1

Github にリンクするアプリケーションの「about」ウィンドウへのリンクを追加しようとしています。私はそのプロセスをある程度知っていますが、それが何をするのか複雑に思えます。すべてのエラーキャッチを入れなければなりません.URI構文が正しいと確信しているので、このキャッチをスキップする方法はありますか? この変数は最終的なままであり、リソースの場所の構文が変更されない限り、問題ないはずです

コード:

        //TODO: Simplify?
        String gitLocation = "https://github.com/DanubeRS";
        try {
            final URI gitUri = new URI(gitLocation);

            //Add the github button action (link to site)
            githubButton.addActionListener(new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    try {
                        Desktop.getDesktop().browse(gitUri.resolve(gitUri));  //Try to open URL
                    } catch (IOException e1) {
                        //URI unresolvable
                        e1.printStackTrace();
                    }
                }
            });
        } catch (URISyntaxException e) {
            e.printStackTrace();
        }
4

1 に答える 1

4

をでラップする便利なメソッドURI.create(String str)を使用できます。JavaDocから:URISyntaxExceptionIllegalArgumentException

このメソッドは、指定された文字列が正当なURIであることがわかっている状況で使用するために提供されています。たとえば、プログラム内で宣言されたURI定数の場合、文字列がそのように解析されない場合のプログラミングエラーと見なされます。URISyntaxExceptionを直接スローするコンストラクターは、URIがユーザー入力から、またはエラーが発生しやすい他のソースから構築されている状況で使用する必要があります。

IOExceptionスローされたfromはDesktop.browse()、デフォルトのブラウザが設定されていないことを示します。おそらく、ユーザーに通知することで、それを適切に処理する必要があります。

于 2013-01-22T05:50:22.900 に答える