ラベル Java の投稿を表示しています。 すべての投稿を表示
ラベル Java の投稿を表示しています。 すべての投稿を表示

2014年3月10日月曜日

[Mac]mavenをインストールする

このエントリーをはてなブックマークに追加 Clip to Evernote
Mac OS X(Mavericks)にmaven3.2.1をインストールしてみた。
Androidプロジェクト使うにはmavenは3.1以上が必要らしい。

参考
Mac OS X に maven3 (3.0.x) をインストールする手順

公式ホームページからmavenをダウンロードする

2014/03/10時点では、3.2.1が最新だったので、そのバージョンをダウンロード
Maven 3.2.1 (Binary tar.gz)を選んでダウンロードする

解凍したフォルダの移動

ダウンロードしたら、解凍してフォルダ毎/usr/local/の配下に移動する。
私の場合は、Downloadフォルダに置いてしまったのでそこからターミナルで移動させた。
cd
cd Downloads
mv apache-maven-3.2.1 /usr/local

環境変数の設定

環境変数の設定をする。~/.bash_profile を作ってない場合は、viで作ればOK
以下のパスを追加する

  • vim ~/.bash_profile

export M3_HOME=/usr/local/apache-maven-3.2.1
M3=$M3_HOME/bin
export PATH=$M3:$PATH
ファイルの編集が終わったら、環境変数を反映させる
source ~/.bash_profile

動作確認

これで手順は完了なので、動作確認
ターミナルでmvnコマンドを叩く
mvn --version
こんな感じになったら良いらしい
Maven home: /usr/local/apache-maven-3.2.1
Java version: 1.6.0_65, vendor: Apple Inc.
Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Default locale: ja_JP, platform encoding: SJIS
OS name: "mac os x", version: "10.9.2", arch: "x86_64", family: "mac" 
ま、Windowsをあんまり変わらんですね。
cd 

2013年10月18日金曜日

[Java][Mac]Macだとjavaのデフォルト文字コードがSJIS

このエントリーをはてなブックマークに追加 Clip to Evernote
Macでのjavaのコンパイル、実行はデフォルト文字コードがどうやらSJISらしい。。

解決策として、文字コードをUTF-8にして実行するには
javac -J-Dfile.encoding=utf-8 HelloWorld.java
java -Dfile.encoding=utf-8 HelloWorld
とすれば良いらしい

2013年8月6日火曜日

[Java]『Java言語で学ぶデザインパターン入門』を写経した

このエントリーをはてなブックマークに追加 Clip to Evernote
今更だけど、デザインパターンを再勉強してみようと思い、写経してみます。

参考図書は『Java言語で学ぶデザインパターン入門』(結城浩著)です。 

ソースコードは本家サイトのこちらからもダウンロード出来ます。

今回はまるまるコピーではなく、HerokuにデプロイしてWebに結果が出るようにしているので、ソースコードはGitHubに公開しています。
GitHubはこちら
git@github.com:yukiko-kato-bass/desgin-pattern-java.git

それでは順次公開していきます!!

第1部 デザインパターンに慣れる

第1章 Iterator -- 1つ1つ数え上げる --


2013年4月10日水曜日

[Mac][Java]Java7にアップデートしてみた

このエントリーをはてなブックマークに追加 Clip to Evernote
MacにPlayFrameworkをインストールするのに、Javaのバージョンも上げてみようということで、Javaのアップデートについてまとめました。
結構ハマった。。

○環境

OSX10.7.5 Lion
Java6が標準で入ってました。

1.JDKのインストール

こちらのサイトを参考にさせて頂きました。
MacでJava7を使う。ー KRAKENBEAL RECORDS

OracleからJava7の最新バージョンをダウンロード
http://java.com/ja/download/mac_download.jsp?locale=ja
※2013/04/09時点では、Java7update17が最新でした。

2.OpenJDKをダウンロード

まずは、XcodeのCommandLineToolsが必要なので、XcodeのPreferencesのDownloadからCommandLineToolsをインストールします。

インストールが完了したら、ターミナルを起動して、以下のwikiを参考にしながらやってきます。
Building and Packaging OpenJDK7 for OSX

○XcodeのXcode-selectを有効にする(たぶん)

ターミナルで以下コマンドを叩く
$ sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

○Mercurialを入れる(なんかバージョン管理のなんからしい)

ターミナルで以下コマンドを叩く。
本家サイトからzipファイルをダウンロードし、展開したアプリをダブルクリックしてインストールするだけ。

○X11のシンボリックリンクを作成する(Lionのみ)

Mountain Lionは別のツール?だかを使うので、必要ないとか。
$ sudo ln -s /usr/X11/include/X11 /usr/include/X11

○いよいよOpenJDKのダウンロード

ディレクトリを作成して、そこにgitからcloneしてきます。

$ mkdir ~/openjdkathome
$ cd ~/openjdkathome
$ git clone https://github.com/hgomez/obuildfactory.git

○PATHの設定

PATHを設定します。
$ export PATH="/usr/bin:/bin:/usr/sbin:/sbin:$PATH"

○OpenJDKをビルドする

ビルドするのに結構かかります。自分の環境だと30分ぐらいかかってました。。謎。

$ cd ~/openjdkathome
$ XBUILD=true ./obuildfactory/openjdk7/macosx/standalone-job.sh

ビルドが終わったらこんな表示が出ればOK

>>>Finished making images @ Tue Apr  9 17:31:25 JST 2013 ...
########################################################################
##### Leaving jdk for target(s) sanity all docs images             #####
########################################################################
##### Build time 00:28:59 jdk for target(s) sanity all docs images #####
########################################################################
#-- Build times ----------
Target all_product_build
Start 2013-04-09 16:51:58
End   2013-04-09 17:31:26
00:02:55 corba
00:05:07 hotspot
00:00:39 jaxp
00:00:48 jaxws
00:28:59 jdk
00:00:59 langtools
00:39:28 TOTAL
-------------------------
openjdk version "1.7.0-u14-b19"
OpenJDK Runtime Environment (build 1.7.0-u14-b19-20130409)
OpenJDK 64-Bit Server VM (build 24.0-b38, mixed mode)
openjdk version "1.7.0-u14-b19"
OpenJDK Runtime Environment (build 1.7.0-u14-b19-20130409)
OpenJDK 64-Bit Server VM (build 24.0-b38, mixed mode)
 ついでに、以下のパスにjreとjdkのイメージ圧縮ファイルがあればOK。ログにも出力されますが。

$ ls -l OBF_DROP_DIR/openjdk7
total 354384
-rw-r--r--  1 *************************  staff  29025076  4  9 17:33 j2re-bundle-x86_64-u14-b19-20130409.tar.bz2
-rw-r--r--  1 *************************  staff  29040032  4  9 17:32 j2re-image-x86_64-u14-b19-20130409.tar.bz2
-rw-r--r--  1 *************************  staff  61666278  4  9 17:32 j2sdk-bundle-x86_64-u14-b19-20130409.tar.bz2
-rw-r--r--  1 *************************  staff  61704108  4  9 17:32 j2sdk-image-x86_64-u14-b19-20130409.tar.bz2

○Imageの圧縮ファイルを解凍する
4つあるうちのj2sdk-bundleから始まるファイル名のファイルを解凍します。
$ tar xvfj OBF_DROP_DIR/openjdk7/j2sdk-bundle-x86_64-u14-b19-20130409.tar.bz2

○JAVA_HOMEの設定

解凍が終わったら、JAVA_HOMEを設定します。
$ export JAVA_HOME=`pwd`/jdk1.7.0.jdk/Contents/Home 

○バージョンの確認

ようやくバージョンの確認!Java6から7に上がっていればOK!
$ java -version
openjdk version "1.7.0-u14-b19"
OpenJDK Runtime Environment (build 1.7.0-u14-b19-20130409)
OpenJDK 64-Bit Server VM (build 24.0-b38, mixed mode) 
■考察
 OpenJDKがGitHubに移動して、内容もだいぶ変わってるみたいだったので、結構手順が増えてました。
そもそもJavaPreferenceがいないし。。
Mac慣れしないと大変だーーー。

これでようやくPlayFrameworkの設定ができるぞ!!

2013年1月7日月曜日

[Play framework][Windows]eclipseにプロジェクトとしてインポートする

このエントリーをはてなブックマークに追加 Clip to Evernote

eclipseにPlayプロジェクトをインポートします。
本家wikiはこちら

0.eclipseのダウンロード

eclipseをダウンロードして、任意のディレクトリに展開します。
ダウンロードはこちらから
※2013/01/07時点ではEclipse Juno (4.2) SR1が最新だったので、そのバージョンを落としています。

1.設定ファイルの生成

eclipse用の設定ファイルを生成します。
Playコンソールを立ちあげて、以下のコマンドを打ちます。
eclipsify
jarファイルが必要な場合は、
eclipsify with-source=true
で、必要なライブラリを落としてきてくれるそうです。

2.eclipseにインポートする

プロジェクトの[import]->[General]->[Existing Projects into Workspace]を選択し、
Playプロジェクトを生成したディレクトリを指定します。
importするとこんな感じに展開されます。
eclipseの設定ファイルは、コミットはしてはいけないので、gitとか使う時はignoreにしておくとよいみたいです。

次はHelloWorldを表示してみます

[Play framework][Windows]Playコンソールを使う

このエントリーをはてなブックマークに追加 Clip to Evernote

Playコンソールを使ってみます。
今回も本家のwikiを参照してやってみます。

1.コンソールを起動する

起動は、アプリケーションがあるディレクトリに行って、以下のコマンドを打つだけです。
play

2.ヘルプを見る

以下のコマンドで見れます。
help play


3.開発モードでサーバを起動する

以下、コマンドで起動できます。
run

実際にブラウザで確認してみます。
こんな画面が出ればOKです。
本家曰く、

このモードでは、サーバはホットデプロイ機能が有効になった状態でサーバが起動します。つまり、リクエストがくるたびに、Play がプロジェクト全体をチェックして、必要なソースコードだけを再コンパイルします。サーバの再起動が必要なときは、それも自動的に行います。
コンパイルエラーが発生したときは、その内容をブラウザ上で直接確認することができます。

だそうです。
都度コンパイルしてるのかー
サーバの起動を停止する場合は、Ctl+Dで停止です。

4.コンパイルする

もちろんサーバを起動しなくてもコンパイルは出来るそうです。
コマンドは以下
compile
エラーが出てると、この時に表示されるみたいですね。

あとは、対話でコードをテストしたり、デバックモードにしたりいろいろ出来るみたいです。

ちなみに、playコンソールを立ちあげないで、サーバを起動する場合は、
play run
で出来るそうな。
あとはhelpを見ながらごにょごにょしてみます。

次は、eclipseのプロジェクトインポートの仕方です。


[Play framework][Windows]新規アプリケーションを作成する

このエントリーをはてなブックマークに追加 Clip to Evernote

新規アプリケーションを作成します。
今回も、本家のwikiを参考に進めていきます。

1.新規アプリケーションを作成する

コマンド一発で出来るから素敵。
コマンドはRuby on Rails に似てますね。

作業ディレクトリに生成されるっぽいので、workspace等は自分で作るといいみたいです。
今回は、playディレクトリの中にworkspaceを作成して、その中にアプリケーションを作成します。

まずは、このコマンドを打ちます。
play new myFirstApp
play new [アプリケーション名] でアプリケーションが生成されます。

このコマンドを打つと、

  • アプリケーション名
  • アプリケーションのテンプレート
    • Scalaのテンプレート
    • Javaのテンプレート
    • 空のテンプレート

を聞かれますので、それぞれ入力していきます。
テンプレートは、後で変更出来るわけではないみたいですが、Javaを選んだからといってScalaができなくなるわけではない、という事みたいです。
まあ、気楽に行きましょう(笑)


これで終わり!

アプリケーションが作成されたら、playコマンド打って確認します。
こんな感じになればOKらしい。これがいわゆるplayコンソールというやつですね。

2.アプリケーションの構成

本家のwikiにわかりやすく書いてくれているので、一度は見といた方がいいかと。
Play 2.0 アプリケーションの構造

次はplayコマンドをちょっとだけ

[Play framework][Windows]Play frameworkをインストール

このエントリーをはてなブックマークに追加 Clip to Evernote

※バージョン等は2013/01/07時点でのものです。

まずはインストールから。
本家のwikiが結構わかりやすく書いてくれてますが、いかんせんLinux/Mac系の記述なんで、
Windowsに読み換えていかないといけないです。
が、順番はそんなに変わらないので、その順番でやっていきます。

1.Javaの環境構築

Java JDKは6以上がサポートされているようです。
私の環境は、

java version "1.7.0_03"
Java(TM) SE Runtime Environment (build 1.7.0_03-b05)
Java HotSpot(TM) 64-Bit Server VM (build 22.1-b02, mixed mode)

でした。
Javaのインストールは割愛。


2.バイナリパッケージをダウンロードする

ここから最新のバージョンを選んでダウンロードします。
RC版を除いて、play-2.0.4.zipが最新だったので、それをダウンロードします。
ダウンロードが終わったら、解凍して書き込み可能な場所に配置します。
Windowsの場合だと、ProgramFilesとかは書き込み権限がなかったりするので、
ルートディレクトリ直下か、ユーザディレクトリの下がよいそうです。
今回はCドライブ直下に配置しました。

3.PlayのPathを通す

PlayのPathを通します。
通す先は、インストール先のディレクトリでいいようです。
cドライブ直下にインストール先のディレクトリをおいた場合は、こんな感じ。
C:\play-2.0.4
4.Playコマンドの確認
Playコマンドが使えるか確認します。
コマンドプロンプトを立ちあげて、
play help
と打ってみます。
以下のような表示がされればOK

これでインストールは完了です。
案外簡単だったー。

次はアプリケーションの作成です。

2012年12月10日月曜日

[tomcat]起動時にUnsupportedEncodingException cp932と言われたら

このエントリーをはてなブックマークに追加 Clip to Evernote
tomcatの起動時に、
UnsupportedEncodingException cp932って出てきたので、
ググって調べてみた。

どうやら、windowsのインストーラー版だと
XMLの文字コードがShift-JISだったり、
XML宣言のencodingがutf-8じゃなかったりするので
その辺を直してやると起動デキました。

無事解決。

参考URL
Tomcat,UnsupportedEncodingExceptionとかで起動しない
http://d.hatena.ne.jp/gnarl/20080805/1217900224

egacreate UnsupportedEncodingException: cp932
http://egacreate.blogspot.jp/2009/03/unsupportedencodingexception-cp932.html

2012年7月4日水曜日

Jadのありか

このエントリーをはてなブックマークに追加 Clip to Evernote
本家のサイトが死んでるみたいなので、
Mirrorサイトから引っ張ってきた。URLのメモ。


http://www.varaneckas.com/jad/

っていうか、本家どうなってるんだろう。。。

2012年5月16日水曜日

TreeMapの時のkeyの罠

このエントリーをはてなブックマークに追加 Clip to Evernote
仕事中に同僚が軽くハマったみたいだったので、ついでにメモ。


Mapをソートさせる必要があって、TreeMapを継承させたんだけど、
putできひん!とかエラーを抜かしやがるので、ちょっと調査。


ようは、TreeMapのkeyにオブジェクトを使ってたら、そのオブジェクトはComparableを実装しておく必要があるらしい。


オブジェクトだから、順番なんてわからんよー
ってことなんでしょうね。
だから、Comparable実装しておけよって話なんだと思われ。


ってことが、まんま書いてある記事を発見(笑)
[java]TreeMapのキーに注意
http://d.hatena.ne.jp/sleepy_yoshi/20080123/p1


無事解決してなにより。