Posts filed under ‘Microsoft Azure’

WebSocket ハンズオンと Java on Microsoft Azure について

この記事は Java EE Advent Calendar 2015 の12/22分の記事です。
昨日は、emag@github さんのWildFly Swarm 周遊でした。
明日は、@HirofumiIwasakiさんです。

マイクロソフトに転職してはやいもので5ヶ月が過ぎ、やっと会社にも同僚にも慣れてまいりました。Java EE の Advent Calendar ということで Java EE に関連した内容をお届けします。

内容は、Azure 上で WebSocket のアプリケーション開発のハンズオン・ラボの資料です。当初、ブログにまとめようと思いましたが、ページ数がかさむのでラボの資料は、下記の PDF にまとめました。また、このハンズオンは、学生(専門学校の皆様や大学生)も理解していただけるよう記載した内容ですので、社会人の皆様でも、はじめて WebSocket を学ぶ方には有効ではないかと思います。ぜひ下記のハンズオンをお試しいただき、Java EE 7 の WebSocket を Azure 上でお楽しみください。

SlideShare : SlideShare からも直接ご覧いただけます。(PDF のダウンロードも可能)
Docs.com : Docs.com からもご覧いただけます。(PDFのダウンロードも可能)

最後に
今年は、Java 業界を驚かせてしまったり、お騒がせしましたが、みなさま本当にありがとうございました。Java の 20 周年を皆様と一緒に過ごすことができたのは心より幸せでした。そして、マイクロソフトに転職しても Java のエバンジェリストができて、今なによりも幸せです。マイクロソフトに入社して、今年は少し様子見をしていた所もあります。しかし来年は、もっと積極的にやっていく予定ですので、会社が変わってもどうぞ皆様、これからもよろしくお願いします。

皆様、良いお年を!!
Have a good Merry Christmas and a happy New Year !!

2015年12月22日 at 1:36 午後 1件のコメント

Microsoft Azure IoT Hub with Java

Microsoft Azure の IoT Hub が Java でも利用できるということで試しました。Microsoft Azure の IoT Hub に関する詳細な説明はこちらをご参照ください。

Azure IoT Hub とは
IoT Hub と Event Hubs の比較

私がはまったのは1点で、「Device ID」をどうやって作るかという点でしたが、そこも下記にくわしく手順を記載します。

1. 最初に、Microsoft Azure の管理ポータルにアクセスし、新規から IoT Hub を作成します。
  Microsoft Azure の管理ポータルへアクセス

「参照 >」から「IoT Hub プレビュー」を選択します。

「新規」ボタンを押下すると、下記の画面が表示されますので「Name」に名前を入力し、利用する規模に応じて価格やプランを選択してください。

次に、リソース・グループ名を新規に作成し、ロケーションとして「東アジア」を選択し最後に「作成」ボタンを押下してください。

2. Windows 環境で DeviceExplorer をインストール
Azure IoT SDKsのサイトにアクセスし、DeviceExplorer のインストーラを入手してください。Windows 環境用に用意されている「SetupDeviceExplorer.msi」をダウンロードします (このリンクから入手できる版は 2015-11-30 版です、最新版はAzure IoT SDKsから入手してください)。

ファイルを入手後、入手したファイル(インストーラ)をクリックしてインストーラを起動してください。

次に、インストール場所や利用者を指定し「Next >」ボタンを押下します。

確認画面が表示されますので、「Next>」ボタンを押下します。

ユーザアカウント制御の確認画面が表示されますので、「はい(Y)」を押下してインストールをはじめてください。

インストールが完了すると下記の画面が表示されますので「Close」ボタンを押下してください。

インストールが完了すると Windows 10 の場合、メニューから「最新追加されたもの」の欄から実行できることを確認できます。

3. Device Explorer から Device ID と接続用文字列を作成

メニューから DeviceExplorer を起動してください。起動すると下記の画面が表示されます。

ここで、DeviceExplorer から Microsoft Azure の IoT Hub に接続し操作できるように、Azure 上で接続用の情報を確認し取得します。Microsoft Azure の管理ポータルに接続し、作成した IoT Hub のサービスを参照してください。

IoT Hub サービスを参照すると「Settings」というボタンがあるので押下します。

「Settings」ボタンを押下すると「Shared access policies」のリンクがあるので選択してください。

「Shared access policies」の POLICY から「iothubowner」を選択してください。
選択すると「Connection string—primary key」の欄があります。記載内容をクリップ・ボードへコピーできるようにコピー・ボタンが右端に用意されていますので、これをクリックしてコピーしてください。

クリップ・ボードへ文字列がコピーされると「コピー済み」と表示されます。

文字列をコピーしたのち、Device Explorer に戻り、文字列を貼り付けてください。

文字列をコピーしたのち、「Update」ボタンを押下してください。正しく設定が更新されると「Settings updated successfully」という画面が表示されます。

続いて、Device Explorer のタブから「Management」を選択し「Create」ボタンを押下してください。

ボタンを押すと、下記の画面が表示されますので、「Device ID」欄にデバイス固有の名前を入力し「Create」ボタンを押下してください。(Primary Key,Secondary Keyは自動的にキーの文字列が入力されています。)

ボタンを押下すると下記の画面が表示されますので「Done」ボタンを押下してください。

デバイス ID を作成すると一覧に1行が追加されます。ここで、追加された行をマウスで右クリックしてください。すると、選択メニューが表示されますので、「Copy connection string for selected device」を選択して接続用の文字列をコピーしてください。

コピーして作成された、接続用の文字列の例は下記のような文字列です。この文字列は後からのプログラム内で記述する必要があります。そこで、この文字列を一時的にテキストファイルなどに保管しておいてください。

HostName=HOSTNAME.azure-devices.net;DeviceId=DEVICE-ID;SharedAccessKey=Wf0o****************************************

※ 補足:Device Explorer の詳しい使い方は下記に記載されていますので、こちらもご確認ください。
How to use Device Explorer for IoT Hub devices

4. Microsoft Azure IoT Hub サンプルコードの作成

それでは、プログラムを組むための環境設定や準備が整いましたので、実際にプログラムを書いてみましょう。本サンプル・アプリケーションは、基本的にこちらに記載されている内容を実際に動作させた物です。
※ 本記事の目的は、IoT Hub の設定方法を説明するのがメインのため、コードの詳細にまでは触れず、MS 社員のどなたかが作成したコードをそのまま記載しています。しかし、この一連の設定ができると色々と面白いことができるので、まずは基本的な手順を理解してください。

Maven の pom ファイルは下記のようになります。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.yoshio3</groupId>
    <artifactId>Azure-IoT-Hub</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven-compiler-plugin-version>2.3.2</maven-compiler-plugin-version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.microsoft.azure.iothub-java-client</groupId>
            <artifactId>iothub-java-client</artifactId>
            <version>1.0.0-preview.7</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>2.4.2</version>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <finalName>${project.artifactId}-${project.version}</finalName>
                    <filters>
                        <filter>
                            <artifact>*:*</artifact>
                            <excludes>
                                <exclude>META-INF/*.SF</exclude>
                                <exclude>META-INF/*.DSA</exclude>
                                <exclude>META-INF/*.RSA</exclude>
                            </excludes>
                        </filter>
                    </filters>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>2.6</version>
                <configuration>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                            <mainClass>com.yoshio3.Main</mainClass>
                        </manifest>
                    </archive>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

Java のサンプル・ソースコードはこちらになります。

package com.yoshio3;

import com.microsoft.azure.iothub.DeviceClient;
import com.microsoft.azure.iothub.IotHubClientProtocol;
import com.microsoft.azure.iothub.Message;
import com.microsoft.azure.iothub.IotHubStatusCode;
import com.microsoft.azure.iothub.IotHubEventCallback;
import com.microsoft.azure.iothub.IotHubMessageResult;

import java.io.IOException;
import java.net.URISyntaxException;
import java.util.Scanner;


public class Main {

    protected static class EventCallback
            implements IotHubEventCallback {

        @Override
        public void execute(IotHubStatusCode status, Object context) {
            Integer i = (Integer) context;
            System.out.println("IoT Hub responded to message " + i.toString()
                    + " with status " + status.name());
        }
    }

    protected static class MessageCallback
            implements com.microsoft.azure.iothub.MessageCallback {

        @Override
        public IotHubMessageResult execute(Message msg,
                Object context) {
            System.out.println(
                    "Received message with content: " + new String(msg.getBytes(), Message.DEFAULT_IOTHUB_MESSAGE_CHARSET));

            return IotHubMessageResult.COMPLETE;
        }
    }

    public static void main(String... args) throws IOException, URISyntaxException {
        //Device Explorer で作成してコピーした接続用の文字列をここに記載
        String connString = "HostName=HOSTNAME.azure-devices.net;DeviceId=DEVICE-ID;SharedAccessKey=Wf0o****************************************";


        IotHubClientProtocol protocol = IotHubClientProtocol.AMQPS;

        DeviceClient client = new DeviceClient(connString, protocol);

        MessageCallback messageCallback = new MessageCallback();
        client.setMessageCallback(messageCallback, null);
        client.open();

        for (int i = 0; i < 10; ++i) {
            String msgStr = "Event Message " + Integer.toString(i);
            try {
                Message msg = new Message(msgStr);
                msg.setProperty("messageCount", Integer.toString(i));
                System.out.println(msgStr);
                EventCallback eventCallback = new EventCallback();
                client.sendEventAsync(msg, eventCallback, i);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

        System.out.println("Press any key to exit...");
        Scanner scanner = new Scanner(System.in);
        scanner.nextLine();

        client.close();
    }
}

念のため、Maven プロジェクトは Git Hub にもあげておきます。上記をベースに、Microsoft Azure IoT Hub Java Client 1.0.0-preview.7 API を参照しながらプログラムを作ってみてください。

5. デバイスでプログラム実行
プログラムをビルド後、下記のコマンドを IoT デバイス上で実行してください。

# java -jar Azure-IoT-Hub-1.0-SNAPSHOT.jar

実行すると、下記のようなメッセージが表示されます。

$ java -jar Azure-IoT-Hub-1.0-SNAPSHOT.jar
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
12 15, 2015 5:27:38 午後 org.apache.qpid.proton.engine.impl.ssl.SslEngineFacadeFactory getClass
警告: unable to load org.bouncycastle.openssl.PEMReader
12 15, 2015 5:27:38 午後 org.apache.qpid.proton.engine.impl.ssl.SslEngineFacadeFactory getClass
警告: unable to load org.bouncycastle.openssl.PasswordFinder
12 15, 2015 5:27:38 午後 org.apache.qpid.proton.engine.impl.ssl.SslEngineFacadeFactory
警告: unable to load bouncycastle provider
Event Message 0
Event Message 1
Event Message 2
Event Message 3
Event Message 4
Event Message 5
Event Message 6
Event Message 7
Event Message 8
Event Message 9
Press any key to exit…
IoT Hub responded to message 5 with status OK_EMPTY
IoT Hub responded to message 4 with status OK_EMPTY
IoT Hub responded to message 7 with status OK_EMPTY
IoT Hub responded to message 2 with status OK_EMPTY
IoT Hub responded to message 3 with status OK_EMPTY
IoT Hub responded to message 6 with status OK_EMPTY
IoT Hub responded to message 1 with status OK_EMPTY
IoT Hub responded to message 9 with status OK_EMPTY
IoT Hub responded to message 0 with status OK_EMPTY
IoT Hub responded to message 8 with status OK_EMPTY


参考:
Microsoft Azure IoT device SDK for Java

IoT Kit ハンズオン トレーニング 初めの一歩モノの接続からデータ分析まで by @embedded_george

最後に、今回は実戦的なアプリまでは作成しませんでしたが、上記をベースに Raspberry Pi や LEGO Mindstorms 上にプログラムを配置し、Azure 上にデータを配信したり、Azure から各種デバイスを操作したりできるようになりますね。

Let’s enjoy IoT with Java on Azure !!

2015年12月15日 at 5:24 午後 1件のコメント

Microsoft Java DevOps ハッカソン@JJUG CCC 2015


JJUG CCC 2015 Fall が2015年 11月 28日 (土) にベルサール新宿グランド(東京都新宿区西新宿8-17-3 住友不動産新宿グランドタワー) で開催されます。

今回、日本マイクロソフト株式会社は JJUG CCC にプラチナ・スポンサーとして参加し、Java の開発者と運用者による DevOps ハッカソンを2日間で実施します。このハッカソンは過去2度程実施していますが、いずれの参加者も参加してよかった他の方にもぜひお勧めしたいといわれている、とても有意義なハッカソンです(下記の参加レポートをご参照)。
みなさま、Microsoft Azure のプラットフォーム上で、 Jenkins や今はやりの Docker などを利用して 継続的インテグレーションやデリバリ(CI や CD)を体感してみませんか?今回は、JJUG との共催という事で、開発者は Java デベロッパーのみなさまが対象となります。

参加のご登録はコチラから
 ■ 開発者の方はコチラ
 ■ インフラ技術者の方はコチラ

( ※ 参加可能な人数に限りがあるため、JJUG CCC の参加登録とは別途、登録サイトをご用意しています。JJUG CCC の参加登録はコチラから行ってください。)



ご案内文
DevOps はソフトウエアデリバリのライフサイクルを早める考え方で、短期間で開発、 運用を繰り返し、一日に5 回以上新しいサービスをリリースする企業も出てくるなど、DevOps のビジネス価値、効果は昨今たいへん注目されています。      

しかし DevOps が何を指すのかは人やベンダーによって言うことがまちまちで、その多くはツールのみの話に終始していますが、ツールは DevOps の要素のひとつであり、実際は人、プロセス、さまざまな要素が関係します。      

アプリケーション開発者、そしてインフラ技術者でチームを構成し、DevOps のプラクティスを適用して、Infrastructure as Code の自動化技術を使いながら本物のDevOps が体験できるイベントを企画しました。

ぜひ奮ってご参加ください。


過去に開催した DevOps ハッカソンの参加レポートは下記にリンクしています。
● メディアの記事
http://codezine.jp/article/detail/8944
http://www.atmarkit.co.jp/ait/articles/1509/10/news168.html

● 参加者のブログ
http://heartbeats.jp/hbblog/2015/09/microsoft-devops-hackathon.html
http://couger.hatenablog.com/entry/2015/09/06/213104
http://blog.modd.com/entry/2015/09/07/151421
http://changesworlds.com/2015/09/devops-hackathon-day-2-done/
http://newscentral.exsees.com/item/2e7e6c6899c626e2baddb7cdeaaed62d-d28352a527a1d995287ddd23891859aa

参加のご登録はコチラから
 ■ 開発者の方はコチラ
 ■ インフラ技術者の方はコチラ

2015年11月6日 at 2:48 午後

Microsoft のエバンジェリストの SNS 関連リンク一覧

日本マイクロソフトには非常にたくさんのエバンジェリストがいらっしゃいます。その皆様の SNS へのリンクがまとまってあるといいなぁと個人的に思っていましたが、無かったので作りました (順次追記予定)。

私のブログを閲覧されている Java 愛好者の皆様は、ご存知ない MS のエバンジェリストもいらっしゃるのではないかと思います。

下記は、個人的なお立場で情報発信をなさっている方もいらっしゃいますが、ぜひ、MS のエバンジェリストの皆様をチェックしていただければ幸いです。

お名前 担当  SNSへのリンク
荒井 省三 全般 Blog: http://blogs.msdn.com/b/shozoa/
安納 順一 Active Directory Blog : http://blogs.technet.com/b/junichia/
砂金 信一郎 スタートアップ、学生、Azure、IoT、機械学習中心に全般 Blog:http://blogs.itmedia.co.jp/isago/
Twitter : https://twitter.com/shin135
FaceBook : https://www.facebook.com/shin135
SlideShare : http://www.slideshare.net/shin135
伊藤かつら 統括本部長 Twiter : https://twitter.com/kazekaoru5gatu
井上 章 .NET/Visual
Studio/Web Application 関連
Blog:http://aka.ms/chack
Twitter : https://twitter.com/chack411
FaceBook : https://www.facebook.com/chack411
docs.com : https://docs.com/inoue-akira
SlideShare : http://www.slideshare.net/chack411
GitHub : https://github.com/chack411
井上 大輔 Microsoft Edge関連 Blog:http://aka.ms/daisukei
Twitter : https://twitter.com/daisukei777
FaceBook : https://www.facebook.com/daisukei777
docs.com : https://docs.com/inoue-daisuke
SlideShare : http://www.slideshare.net/daisukei
牛尾 剛
鵜木 健栄
太田 寛 IoT 関連 Blog: http://blogs.msdn.com/hirosho
Twitter: https://twitter.com/embedded_george
docs.com:https://docs.com/ota-hiroshi
大田 昌幸 Machine Learning, Data Platform, Office 開発 Blog : http://nt-d.hatenablog.com/
Twitter : https://twitter.com/masota0517
docs.com : https://docs.com/masota
SlideShare : http://www.slideshare.net/masayuki1986
大西 彰 部長 Blog: http://blogs.msdn.com/b/aonishi
Twitter: https://twitter.com/oniak3
facebook: https://www.facebook.com/akira.onishi
doc.com: https://docs.com/onishi-akira
SlideShare: http://www.slideshare.net/oniak3
Channel9: https://channel9.msdn.com/Niners/oniak3
大森 彩子 Azure 関連全般 Blog: http://blogs.msdn.com/b/bluesky/
SlideShare: http://www.slideshare.net/ayomori
Twitter(madokumo): https://twitter.com/madokumo
Channel9(madokumo): https://channel9.msdn.com/Series/madokumo
佐藤 直樹 .NET/Visual Studio/UWP/
Azure/Office 365 など全般
Blog:http://aka.ms/naokis
Twitter : https://twitter.com/nksato
SlideShare : http://www.slideshare.net/nksato
GitHub : https://github.com/nksato
佐藤 直生 Azure, Data Platform 関連 Blog:https://satonaoki.wordpress.com/
Twitter : https://twitter.com/satonaoki
FaceBook : https://www.facebook.com/satonaoki
docs.com : https://docs.com/satonaoki
SlideShare : http://www.slideshare.net/satonaoki
鈴木 章太郎 .NET,Visual Studio,UWP,
iOS/Android アプリ開発,
Cross-Platform アプリ開発,
Azure,Office 365 など全般
Blog: http://blogs.msdn.com/b/shosuz
Blog: http://blogs.itmedia.co.jp/shosuz/
Twitter: https://twitter.com/shosuz
facebook: https://www.facebook.com/shosuz
docs.com: https://docs.com/suzuki-shotaro
SlideShare: http://www.slideshare.net/shosuz
田中 達彦 全般 Blog:http://blogs.msdn.com/b/ttanaka/
FaceBook : https://www.facebook.com/tatsuhiko.tanaka.37
docs.com : https://docs.com/ttanaka
SlideShare : http://www.slideshare.net/tatsuhikotanaka37/
高添 修 WIndows Server/Hyper-V 関連 Blog:http://blogs.technet.com/b/osamut/
Facebook:https://www.facebook.com/osamu.takazoe
SlideShare:http://www.slideshare.net/ssuser58fb08/edit_my_uploads
高橋 忍 Windows 関連全般, Windows Mobile 関連 Blog:http://blogs.msdn.com/b/shintak
Twitter:https://twitter.com/shinoblogavi
Facebook:https://www.facebook.com/shinoblogavi
docs.com:https://docs.com/user557050
寺田 佳央 Java 関連 Blog:http://yoshio3.com
Twitter : https://twitter.com/yoshioterada
FaceBook : https://www.facebook.com/yoshio.terada
docs.com : https://docs.com/terada-yoshio
SlideShare : http://www.slideshare.net/tyoshio2002
YouTube : https://www.youtube.com/user/tyoshio2002
戸倉 彩 アカデミック, クラウド関連 Blog:http://blogs.msdn.com/b/ayatokura/
Twitter : https://twitter.com/ayatokura
FaceBook : https://www.facebook.com/aya.tokura21
docs.com : https://docs.com/tokura-aya
SlideShare : http://www.slideshare.net/ayatokura
西脇資哲 業務執行役員 Twitter : https://twitter.com/waki
Facebook : https://www.facebook.com/mnishiwa
野村 一行
畠山 大有 コンテンツ (メディア – サーチ)、
Azure Marketplace
Blog: https://daiyuhatakeyama.wordpress.com/
Twitter: https://twitter.com/dahatake
Facebook: https://www.facebook.com/dahatake
docs.com: https://docs.com/dahatake
Slideshare: http://www.slideshare.net/dahatake
Github: https://github.com/dahatake/
久森 達郎 Cloud, Server Side, Data Platform Blog: http://myfinder.hatenablog.com
Twitter: https://twitter.com/myfinder
Facebook: https://www.facebook.com/tatsuro.hisamori
Docs.com: https://docs.com/hisamori-tatsur
Slideshare: http://www.slideshare.net/myfinder
増渕 大輔 スタートアップ、Azure、BtoC 系 Web の性能設計 Twitter: https://twitter.com/dmasubuchi
Facebook: https://facebook.com/dmasubuchi
Slideshare http://slideshare.net/dmasubuchi
松崎 剛 全般 Blog:http://blogs.msdn.com/b/tsmatsuz
Twitter : https://twitter.com/tsmatsuz
FaceBook :https://www.facebook.com/tsuyoshi.matsuzaki.16
GitHub : https://github.com/tsmatsuz/
物江 修 Web ブラウザー、
UWA (HTML + JavaScript)
Blog : http://blogs.msdn.com/b/osamum/
Twitter : https://twitter.com/osamum_MS
SlideShare : http://www.slideshare.net/osamum
Robbins Andrew Director, Technical Evangelism Blogs : http://drewby.com
Twitter : https://twitter.com/drewrobbins
FaceBook : https://www.facebook.com/drew.robbins
BitHub : https://github.com/drewby
渡辺 弘之 アカデミック, クラウド関連 Blog (Academic): http://blogs.msdn.com/b/microsoft_japan_academic/
Blog : http://blogs.msdn.com/b/hiwatan/
Facebook: https://www.facebook.com/hwata007
Twitter: https://twitter.com/hiwatan007

(※ あいうえお順)

2015年10月15日 at 7:46 午後

Mac 版 Minecraft を Java SE 8 で起動させる方法のご紹介

Mac 版 の Minecraft は https://minecraft.net/store/minecraft から Minecraft.dmg として入手できます。入手したファイルをダブルクリックしてください、すると下記の画面が表示されます。

次に、「Minecraft」のアイコンをドラッグ&ドロップで「/Applications」にコピーしてください。コピーした後、アイコンをダブルクリックして起動すると、下記のメッセージが表示されて起動できません。



“Minecraft” を開くには、以前の Java SE 6 ランタイムをインストールする必要があります。
以前の Java SE 6 のダウンロード Web サイトにアクセスするには、”詳しい情報…”をクリックしてください。


もちろん、Java SE 6 のような、とても古い Java SE はインストールしたくありません。

そこで、Java SE 8 で Minecraft を起動させる方法を下記にご紹介します。

※ 私の説明内容は、基本的にはコチラの記載内容に従い日本語化したものです(直訳ではありません)。オリジナルでは Java SE 7 用に記載されていますが、Java SE 8(JDK 8u60)で動作確認しています。また、オリジナルの動作確認は Mac OS X 10.7.3 で確認してますが、私は Mac OS X 10.10.5(Yosemite) で動作を確認しています。

まず、最新の JDK 8 を Oracle サイトのコチラから入手し、別途インストールをしてください。

次に、「/Applications」にコピーした「Minecraft」をマウスの右クリック(2本指をパッドにおいてシングルクリック)してください。右クリックするとメニューが表示されますので、そこで「パッケージの内容を表示」を選択してください。

選択すると「Contents」ディレクトリが表示されるので、ディレクトリを展開してください。

すると「Info.plist」というファイルが存在しています。

このファイルの内容はテキストファイル( XML ファイル)ですが、これをテキスト・エディタで開いて、内容を下記に書きかえてください。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key> <string>en</string>
<key>CFBundleName</key> <string>MinecraftLauncher</string>
<key>CFBundleVersion</key> <string>1.0.1</string>
<key>CFBundleShortVersionString</key> <string>MinecraftLauncher 1.0.1</string>
<key>CFBundleExecutable</key> <string>LaunchGame</string>
<key>CFBundlePackageType</key> <string>APPL</string>
<key>CFBundleSignature</key> <string>????</string>
<key>CFBundleGetInfoString</key> <string>MinecraftLauncher 1.0.1 © Mojang Specifications, Inc, 2013</string>
<key>CFBundleIconFile</key> <string>favicon.icns</string>
<key>CFBundleAllowMixedLocalizations</key> <true/>
<key>CFBundleInfoDictionaryVersion</key> <string>6.0</string>
<key>CFBundleIdentifier</key> <string>com.Mojang Specifications.Minecraft.Minecraft</string>
<key>LSHasLocalizedDisplayName</key> <true/>
<key>CFBundleDisplayName</key> <string>Minecraft</string>
<key>NSHighResolutionCapable</key> <true/>
</dict>
</plist>

次に、「/Applications/Minecraft.app/Contents/MacOS/」 のディレクトリに移動してください。そこで「LaunchGame」 というファイルを新たに作成し、下記の内容を記載してください。ファイルの作成はターミナルからviコマンドなどで作成して頂いてもいいですし、標準のテキストエディタをご利用頂いてもいずれの方法でも結構です。

#!/bin/bash
SCRIPTPATH=$(cd $(dirname $0);pwd -P)
/usr/bin/java -Xdock:icon="$SCRIPTPATH/../Resources/favicon.icns" -Xmx512m -jar "$SCRIPTPATH/../Resources/Java/Bootstrap.jar"

次に、この「 LaunchGame」に実行権限を与えてください。ターミナルを開き該当のディレクトリに移動した後、下記のコマンドを実行してください。

# chmod 755 LaunchGame

以上で設定は完了です。

最後に、Minecraft を起動しますが、そのまま「Minecraft」のアイコンをクリックして起動すると下記のメッセージが表示されます。

そこで、Minecraft.app を右クリック(2本指をパッドにおいてシングルクリック)して、「開く」を選択してください。

すると、下記の画面が表示されますので、「開く」ボタンを押下し Minecraft を起動します。

※ 一旦、起動して終了した後は Minecraft のアイコンをクリックするだけで起動するようになります。

Linux 版 Minecraft を利用する方法

最後に、上記のやり方と違う方法もご紹介しておきます。
毎回コマンドから実行するのが苦痛でない方は、Linux 版の Minecraft.jar ファイルを入手してください。下記のコマンドでも起動できます。

# java -Xms1G -Xmx1G -jar Minecraft.jar

設定ファイルを編集したりファイルを作成する事なく、実行できますので、コマンドが好きな方はコチラをオススメします。

Let’s enjoy Minecraft on Mac OS/X !!

2015年9月2日 at 1:10 午前 2件のコメント

新しい投稿


Java Champion & Evangelist

Translate

ご注意

このエントリは個人の見解であり、所属する会社の公式見解ではありません

カレンダー

2023年6月
 1234
567891011
12131415161718
19202122232425
2627282930  

カテゴリー

clustermap

ブログ統計情報

  • 1,267,799 hits

RSSフィード

アーカイブ