제가 최근에 읽었던 프로그래머들의 특징에 관한 글중에서 공감이 갔던 구절이 하나 있습니다.
"프로그래머는 UX (User eXperience)를 개발한다고 해도 자신이 좋아하는 환경은 CLI (Command Line Interface)다"
Android SDK 다운로드
.profile 에 PATH 추가
export ANDROID_SDK_HOME=/Users/<자신의 아이디>/work/android/sdk
export PATH=$ANDROID_SDK_HOME/platform-tools:$ANDROID_SDK_HOME/tools:$PATH
이 내용을 추가해 줍니다. 이제 어디서건 android 명령과 adb 명령을 사용할 수가 있게 됩니다.
android-mode 설치해주기
$ git clone git://github.com/remvee/android-mode.git
로 적당한 곳에 받아줍니다. 제 경우에는 "~/.emacs.d/android-mode" 입니다. 그리고 "$ANDROID_SDK_HOME/tools/lib" 에 있는 android.el 을 "~/.emacs.d/android-mode" 에 복사해줍니다.
.emacs 파일에 android-mode 관련 내용 추가
(add-to-list 'load-path "~/.emacs.d/android-mode")
(require 'android-mode)
(require 'android)
(setq android-mode-sdk-dir "~/work/android/sdk")
를 추가해줍니다. 각각의 디렉토리는 제 것을 기준으로 했으니 자신의 디렉토리로 바꾸어 주는 작업이 필요할 것입니다.
JDEE (Java Development Environment for Emacs) 설치하기
$ cd ~/.emacs.d
$ git clone git://github.com/emacsmirror/jdee.git
라는 식으로 적당한 곳에 jdee 를 받아줍니다. 그리고 이것을 컴파일 해줘야 하는데 아마 그냥 안 될것입니다.
Ant-Contrib 이라는 것이 필요합니다. "
여기" 에서 다운 받을 수 있습니다.
ant-contrib-1.0b3-bin.tar.gz 를 다운받고 압축을 풀어서 (
ant-contrib-1.0b3.jar 파일이 나옴) 위의 디렉토리인 "
~/.emacs.d/jdee" 로 복사해줍니다.
$ emacs ~/.emacs.d/jdee/build.xml
로 간단한 조작을 해줍니다. 기존 부분을 아래와 같이 변경해 줍니다. (금방 찾을 수 있습니다 !!)
<!-- add in the contribs (add ant-contrib-VERSION.jar) to CLASSPATH -->
<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="/Users/<자신의 아이디>/.emacs.d/jdee/ant-contrib-1.0b3.jar">
</pathelement></classpath>
</taskdef>
$ cd ~/.emacs.d/jdee
$ ant build
해 주면 모든것이 컴파일 됩니다.
Elib-1.0 설치하기
예전에 링크로 걸어둔 곳에 가봤더니 이제 받는 곳을 찾기가 어려워 졌습니다. 아마 기본적으로 Emacs 에 포함된 것이 아닐까 생각도 해보지만 혹시 모르니 제 디렉토리에 있는 것을 올려둡니다.
첨부파일을 다운 받으시고
로 적당한 곳에 풀어주시면 됩니다. 참고로 저는 "~/.emacs.d/elib-1.0" 에 풀어줬습니다.
JDEE 세팅하기
저는 보통 세팅을 나눠서 하는 것을 좋아합니다. 주력하고 있는 프로젝트에 따라서 .emacs 파일을 조금씩 조절하는 것을 즐겨하기 때문에 이번에도 그런식으로 했습니다.
로 열어서 맨 아래쪽에
를 추가해줍니다. 그리고
$ emacs ~/.emacs.d/cr-jdee.el
로 열어서 다음과 같은 내용을 채워줍니다.
;;;
;;; jdeee settings
;;;
(add-to-list 'load-path "~/.emacs.d/elib-1.0")
(add-to-list 'load-path "~/.emacs.d/jdee/build/lisp")
(setq jde-help-remote-file-exists-function '("beanshell"))
(require 'jde)
;;
;; 저장할 때마다 자동으로 import 정리해주기
;;
(defun java-my-hook ()
(progn
(define-key jde-mode-map [(control return)] 'jde-complete)
(add-hook 'before-save-hook
(lambda ()
(jde-import-kill-extra-imports)
(jde-import-all)
(jde-import-organize))
nil t)
))
(add-hook 'jde-mode-hook 'java-my-hook)
(custom-set-variables
`(jde-global-classpath (quote
("/Users/<자신의 아이디>/work/android/sdk/platforms/\
<자신의 주력 타겟:예로 android-16>/android.jar"
"/Users/<자신의 아이디>/.emacs.d/jdee/build/classes"))))
(provide 'cr-jdee)
이렇게 저장해 주면 기본적인 세팅은 끝입니다. 중간에 java-my-hook 함수로 하는건 몇 가지가 있지만 그중에 제일 편리한 기능이 파일 저장할 때 알아서 import 문을 추가해 주는 기능입니다. Eclipse 의 Cmd + Shift + O 누르면 해주는 기능과 비슷합니다. 처음 실행할 때 beanshell 실행하느라 좀 느리긴 하지만 일일이 찾아주는 것보다 얼마나 편합니까? ㅎㅎ
테스트 하기
프로젝트 만들고 간단하게 빌드 + 테스트는