Translate

2016년 4월 28일 목요일

[Android] SDK를 받았는데 adb 가 없는경우




OS: Ubuntu 15.10 Gnome



안드로이드 SDK 를 다운받았는데 adb 가 없어서 당황했다.
platform-tools 디렉토리가 아예 없었다.

예전엔 기본으로 platform-tools 가 들어있었는데 이젠 기본옵션에서 빠졌나보다.
Android SDK Manager 를 실행해보니 platform-tools 를 받을 수 있었다.




lucifer@lucifer-Vostro-V13:/sdk/android-sdk-linux$ ls -al
total 24
drwxrwxr-x  5 lucifer lucifer 4096 10월 14  2015 .
drwxr-xr-x  6 lucifer lucifer 4096  4월 28 16:15 ..
drwxrwxr-x  2 lucifer lucifer 4096 10월 14  2015 add-ons
drwxrwxr-x  2 lucifer lucifer 4096 10월 14  2015 platforms
-rw-rw-r--  1 lucifer lucifer 1158 10월 14  2015 SDK Readme.txt
drwxr-xr-x 12 lucifer lucifer 4096 10월 14  2015 tools
lucifer@lucifer-Vostro-V13:/sdk/android-sdk-linux$
lucifer@lucifer-Vostro-V13:/sdk/android-sdk-linux$
lucifer@lucifer-Vostro-V13:/sdk/android-sdk-linux$ cd tools
lucifer@lucifer-Vostro-V13:/sdk/android-sdk-linux/tools$
lucifer@lucifer-Vostro-V13:/sdk/android-sdk-linux/tools$ ./android
lucifer@lucifer-Vostro-V13:/sdk/android-sdk-linux/tools$






lucifer@lucifer-Vostro-V13:/sdk/android-sdk-linux$ ls -al
total 36
drwxrwxr-x  8 lucifer lucifer 4096  4월 28 16:45 .
drwxr-xr-x  6 lucifer lucifer 4096  4월 28 16:15 ..
drwxrwxr-x  2 lucifer lucifer 4096 10월 14  2015 add-ons
drwxrwxr-x  3 lucifer lucifer 4096  4월 28 16:44 extras
drwxrwxr-x  4 lucifer lucifer 4096  4월 28 16:44 platforms
drwxrwxr-x  5 lucifer lucifer 4096  4월 28 16:43 platform-tools
-rw-rw-r--  1 lucifer lucifer 1158 10월 14  2015 SDK Readme.txt
drwxrwxr-x  2 lucifer lucifer 4096  4월 28 16:46 temp
drwxrwxr-x 11 lucifer lucifer 4096  4월 28 16:46 tools
lucifer@lucifer-Vostro-V13:/sdk/android-sdk-linux$



2016년 4월 27일 수요일

[오픈소스] 모바일 청첩장 (게임형식) 소스 공개





결혼하는 동생을 위해 청첩장을 만들어줘야 겠다고 마음먹고 청첩장을 만드는데..
그냥 일반적인 청첩장을 만들긴 싫고..

약간 게임 방식이 들어간 청첩장을 만들어야 겠다고 생각해서 아래와 같은 청첩장을 만들게 되었다. 제작 만들기 무료 공짜 셀프 self 1004lucifer
(동생얼굴의 캐릭터를 만들어서 캐릭터 기준으로 오른쪽을 누르고 있으면 오른쪽으로 이동을 하고 왼쪽을 누르고 있으면 왼쪽으로 캐릭터가 이동을 한다.)



소스 주소: https://github.com/1004lucifer/Angular_CreateJS_Wedding
데모 사이트: http://chan-wedding.appspot.com/

AngularJS + CreateJS + Yeoman 을 이용해 사이트를 제작했으며
Google AppEngine 에 소스를 업로드 했기 때문에 서버나 도메인 비용이 들어가지 않고 공짜로 올려서 사람들에게 배포할 수 있었다.




약간의 소스 수정과 이미지만 바꿔치기 하는 것 만으로 사이트를 본인의 청첩장 사이트를 만들 수 있다.

1004lucifer






PS.

1. 작업 중 로딩 속도를 올리기 위해 아래와 같이 작업
[CreateJS] PreloadJS - Multiple Queues 를 이용해 Resource 병렬(동시) 다운로드 방법

2. 빌드가 되지 않는 상황이 발생해서 아래와 같이 작업
[Grunt] grunt build 할 시 "ngtemplates:dist" 부분에서 멈추는 증상



2016년 4월 26일 화요일

[핸드폰] LG Optimus GK 화면떨림 증상 개선방법





LG Optimus GK 사용중 아래와 같이 화면떨림이 발생하여 최근 핸드폰을 변경했다.





이후 알리바바에서 Touch Screen 패널을 구매해서 교체를 하기위해 액정까지 모두 분해를 했다.
하지만 Touch Screen 패널은 특별한 장비가 없으면 교체가 불가능 하다보니 다시 조립을 했다.



믿기지 않게도 증상이 상당히 개선이 되었다.
기존에 위와같이 사용할 수 없을정도의 떨림에서..
3~4시간동안 뜨문뜨문 잠깐 만지지 않았는데 터치가 발생하는 것 말고는 증상이 거의 없었다.

사용상에 크게 불편하지 않을정도로 개선이 되어 다시 핸드폰을 사용할 수 있게 되었다.


LG Optimus GK 액정 자가 교체 방법 (분해방법)


[핸드폰] LG Optimus GK 액정 자가 교체 방법





알리바바 사이트를 보면 LG 옵티머스 GK 액정을 팔고있는 것을 볼 수 있다.
싸다고 할 수는 없지만 완전분해 후 교체방법을 기록으로 남기기 위해 작성한다.

링크: http://www.aliexpress.com/w/wholesale-lg-gk-screen.html?spm=2114.01010208.0.320.rAX6ox&site=glo&groupsort=1&SortType=price_asc&shipCountry=kr&g=y&SearchText=lg+gk+screen




PS.
아래와 같이 Touch Screen 을 구매하면 전용 장비 없이 집에서 개인적으로 작업을 할 수 없다.
그래서 내가 교체방법만 알고 결국 교체를 못했다. ㅠㅠ
Touch Screen 교체방법: https://youtu.be/43vdTq2TAqY
1004lucifer





그럼 시작해 보자.
이전에 작성했던 아래링크 이후의 작업부터 시작을 하겠다.

링크: LG Optimus GK 배터리 자가 교체 방법 (액정교체 만을 위해 굳이 배터리를 분리할 필요는 없다.)

아래에 빨간색으로 네모 표시가 된 곳을 손톱이나 일자드라이버로 분리시킨다.
1004lucifer





두어번 분해를 해보니 아래 이미지의 일자드라이버가 있는 하단의 플라스틱 부분을 벗기지 않더라도 액정교체하는데 별로 지장은 없다.






아래와 같이 보드를 떼어낸다.






근접센서와 카메라 모듈을 분리시킨다.
1004lucifer





아래의 사각형 영역에 붙어있던 부분을 떼어냅니다.
하단에 접착제가 붙어있어서 헤어드라이기로 조금 데운 후 살살 떼어내시면 됩니다.






핸드폰의 액정부분의 각 가장자리 부분을 헤어드라이기로 데운 후 아래와 같이 얇은 플라스틱 같은 것으로 위에서 부터 시작해 한바퀴 돌아가면서 액정을 떼어낸다.
1004lucifer





아래와 같이 분리시킨다.







이제는 새로운 액정을 위와 역순으로 다시 조립을 한다.


다만 주의할점은 측면의 버튼 누르는 부분이 아래와 같이 홈에 제대로 끼워져 있지 않다면 하얀 케이스를 씌우게 되었을 때에 해당 부분이 살짝 들떠있으면 버튼이 눌리지 않는 상황이 발생하니 신경을 써야 한다.
1004lucifer






PS.
터치를 하지 않는데도 화면떨림과 같이 제멋대로 터치가 되는 문제가 있어서 위와같이 모두 분해 후 Touch Screen 을 교체하려 했는데 장비가 없으면 불가능하다는 것을 판단하고 다시 조립을 했는데 증상이 상당히 개선이 되었다.

기존 화면떨림 증상은 핸드폰을 제대로 사용 할 수 없을 정도로 심했었는데
완전분해 후 다시 조립을 하니 3~4시간동안 몇번 일시적으로 발생할 정도로 빈도가 줄어서 일상적으로 사용함에 있어서 문제가 없어졌다.

[핸드폰] LG Optimus GK 배터리 자가 교체 방법





알리바바 사이트를 보면 LG 옵티머스 GK 배터리를 싸게 팔고있는 것을 볼 수 있다.
아래와 같이 $8.55 가격이라면 거의 만원정도 금액인데 배송도 공짜다.
(꼭 Free Shipping 제품을 선택해야 무료배송으로 주문할 수 있다. 배송기간은 보름에서 한달정도이다.)
링크: http://www.aliexpress.com/wholesale?SearchText=lg+gk+battery






새로운 배터리가 준비되었다는 가정하에 이제 작업을 해보자.
핸드폰을 분해할 시 아래와 같이 여러 공구가 필요한데,
십자드라이버 / 별드라이버 이 두개는 없으면 작업을 할 수가 없다.
1004lucifer





우선 하단의 별나사 두개를 풀러준 후 안테나를 시작으로 플라스틱 카드처럼 얇은걸로 한바퀴 두르며 껍데기를 뜯어준다.
(정말 세게 힘주어서 돌려야 한다. 딱딱 소리가 나는데 맞물려있던 부분이 분리되는 소리니 부러질까 염려하지 않아도 된다. 동전과 같은 금속으로 하게되면 플라스틱에 기스가 심하게 날 수 있으니 가급적 플라스틱을 이용한다.)






보이는 모든 나사를 풀러준다.
조립의 편의성을 위해 나사는 아래와 같이 위치를 기억할 수 있도록 배치해 둔다.
1004lucifer





상단 덮개를 들어올려 분리한다.
윗쪽에 걸쇠가 걸려있어서 드라이버로 밀면서 걸쇠를 분리시켜야 한다.
(처음에는 적찹제가 붙어있는지 잘 떨어지지 않는 듯 하나 조금만 힘을주어 분리하면 별 문제 없이 분리할 수 있다.)






아래 빨간색 사각형 부분의 연결 부분을 분리한다.
손톱을 이용해 분리해도 되고 십자드라이버를 이용해 분리해도 된다.
(사실 나는 저기 보이는 파란색 초크같은걸로 흰색 껍데기를 분리하는데 사용했었다.)
1004lucifer





십자드라이버 같은걸로 아래와 같이 배터리를 들어올려서 분리 후 새 배터리를 끼워넣어 딸깍 소리가 날정도로 연결부분 위치를 맞춰 눌러준다.
(배터리 하단에 접착제가 있어서 잘 떨어지지 않는다. 당황하지말고 조금만 더 세게 힘을주면 된다.)






나머지는 위와 역순으로 다시 조립을 하면 된다.
생각보다 간단하여 수리점 가지말고 만원 정도 들여서 집에서 직접 교체 하는 것을 추천합니다. ^^


LG Optimus GK 액정 자가 교체 방법 보기






2016년 4월 25일 월요일

[Ubuntu] 우분투에 Unity 개발환경 구축하기




OS: Ubuntu 15.10 Gnome



http://unity3d.com/
사이트를 확인해보니 기본적으로 개발환경은 Windows/Mac 만 지원하는 것으로 보여진다. (링크)



리눅스에서는 Unity 개발을 할 수없는걸까 찾아봤더니 다행히 우분투에서 설치할 수 있는 패키지가 있었다.
http://forum.unity3d.com/threads/unity-on-linux-release-notes-and-known-issues.350256/



deb 파일을 다운로드 받아 아래와 같이 설치를 했다.

















========================================
2016.04.27 추가

책을보며 예제를 따라하는데 스크립트를 수정하기 위해 스크립트 파일을 더블클릭해서 에디터를 열라고 되어있는데 아무리 더블클릭을 해도 에디팅 모드가 열리지 않아 알아보니 아래와 같이 설정이 필요했다.



1. Edit > Preferences 항목에서 아래와 같이 'Browse...' 선택 하여 사용할 편집기를 선택한다.
gedit 경로: /usr/bin/gedit (기본 설치되어있는 gedit 이외에 다른 편집기를 선택해도 된다.)






2. 아래와 같이 'External Script Editor Args' 항목을 삭제한다.
(기본으로 두게되면 Script 파일을 더블클릭 시 경로가 꼬여버린다.)

 




3. Script 파일을 더블 클릭 시 아래와 같이 파일이 정상적으로 열리는 것을 볼 수 있다.
(사용한 에디터는 Atom Editor: https://atom.io/)










========================================
2016.04.28 추가

Unity ver: 5.4.0b15

만든걸 실행할 때 실행은 정상적으로 되나 웹(WebGL)이나 안드로이드로 빌드 할 시 정상적으로 되지 않았다.


exe파일을 실행하는것 보니 내부적으로 wine을 사용하는 거려나;;

Android 는 java7 설치가 되어있으면 가능하다고 적혀있지만 빌드를 해보니 정상적으로 되지 않으며 오히려 프로젝트의 Resource가 문제가 생겨버렸는지 이미지들이 그냥 점선으로만 표시되어 버전을 돌려서 복구를 해야 했다.




========================================
2016.05.05 추가

Android 빌드 시 이상하게도 그래픽 Resource 가 이상하게 보여지는 문제가 있는 것 같지만 빌드 시 Android SDK, JDK 를 지정해주니 APK 가 정상적으로 생성이 되었다.
(빌드화면에서 'Player Settings' 를 눌러 빌드 옵션에서 Package 이름과 빌드 타겟 버전을 지정을 해주니 정상적으로 되었다.)





참고:
http://blog.miyu.pe.kr/851
http://gyuha.tistory.com/467



2016년 4월 23일 토요일

[노트북] Dell Vostro V13 분해 및 SSD 교체 방법




2010년도 모델의 노트북이다보니 아무래도 많이 느려서 노트북을 새로 살까 하다가 게임도 안하고 그냥 인터넷과 프로그래밍 목적으로만 사용을 하고있어서 디스크만 SSD로 변경하기로 결정했다.


http://arrow93fm.tistory.com/36
링크를 읽어보고 분해 및 SSD 교체를 하기로 결심을 했는데..
블로그의 운영자분이 하판을 잡고 앞쪽으로 순간적인 힘을 줬다고 쓰여있는데..
나는 이해를 하지 못하고 힘으로 뜯다가 다행히 부수기전에 원리를 알게되었다.

알만한 사람은알겠지만나같은사람을위해 동영상을 업로드한다.








아래의 사진에서 보듯이 옆에 양면테이프 같은 적찹제 같은데 붙어있어서 힘을 조금 쎄게 줘서 들어올리지 않으면 빠지지 않는다.









제일 싼 SSD로 변경했음에도 확실히 퍼포먼스가 다른것이 느껴진다.


2016년 4월 21일 목요일

[JXL] Excel 처리 시 UnsupportedEncodingException 오류사항





사용한 라이브러리: jxl-2.6.12.jar





File file = new File("/tmp/sample.xls");

Workbook workbook = Workbook.getWorkbook(file);
Sheet sheet = workbook.getSheet(0);
Cell a1 = sheet.getCell(0, 1);
Cell b1 = sheet.getCell(1, 1);
Cell c1 = sheet.getCell(2, 1);

JAVA에서 JXL을 사용하여 위와같이 엑셀(xls)파일을 읽어들여서 내용을 뽑아오는 부분이 있는데


엑셀에 한글이 없이 모두 영문으로 값을 넣으면 문제가 안되지만 한글이나 대시(-)같은 기호가 있는경우에는 'Workbook.getWorkbook(file)' 부분에서 아래와 같이 메시지가 발생을 하며
a1에만 값이 들어가 있고 b1, c1 변수에는 빈값이 들어가 있었다.
(넣는 값에따라 a1, b1까지 값이 들어가고 c1에 빈값이 들어가기도 했다.)

1004lucifer


Warning: java.io.UnsupportedEncodingException=UTF_8
Warning: java.io.UnsupportedEncodingException=UTF_8
Warning: java.io.UnsupportedEncodingException=UTF_8
Warning: java.io.UnsupportedEncodingException=UTF_8
Warning: java.io.UnsupportedEncodingException=UTF_8







원인

JAVA 구동 시 file.encoding 의 인코딩 값을 잘못 지정해 준 것이 문제였다.
해당 상황에서 톰캣을 사용중이었는데 file.encoding 을 누군가 UTF_8 로 설정을 해놓았던 것이다.

아래와 같이 작업을 했다.


<_TOMCAT_HOME_>/bin/catalina.sh 파일
1004lucifer
# 기존의 설정을 주석처리
#CATALINA_OPTS="$CATALINA_OPTS -Dfile.encoding=UTF_8"

# 인코딩 타입을 올바르게 지정함
CATALINA_OPTS="$CATALINA_OPTS -Dfile.encoding=UTF-8"



2016년 4월 18일 월요일

[CreateJS] PreloadJS - Multiple Queues 를 이용해 Resource 병렬(동시) 다운로드 방법








Example URL: http://chan-wedding.appspot.com/#/game

GitHub URL: https://github.com/1004lucifer/Angular_CreateJS_Wedding


CreateJS를 이용해 제작한 위의 Example 링크에서 이미지가 많다보니 단일 Queue를 이용한 경우에는 처음 로딩 시 10초가 넘어가는 로딩속도를 보여줬다.
(크롬 개발자도구를 이용해서 확인 시 아래와 같이 Image Resource 들을 순차적으로 로딩하는 것을 확인 할 수 있었다.)


브라우저의 기본 사양은 같은 도메인에서 동시에 여러개의 리소스들을 동시에 다운로드가 가능하다. http://sgdev-blog.blogspot.kr/2014/01/maximum-concurrent-connection-to-same.html





아무리 Canvas를 이용한 게임이라지만 15초 가까이 되는 로딩속도를 나는 견딜 수 가 없었다.







제목은 거창하지만 Multiple Queues 라는게 그냥 LoadQueue 를 여러개 만들어서 loadManifest 함수를 각각 수행하는 것이다.


처음에는 createjs.LoadQueue 객체를 하나로 loadManifest 함수를 실행 시 이미지를 병렬로 같이 받아올 줄 알았는데 아무리 찾아봐도 loadManifest 함수를 실행 시 병렬로 리소스를 가져오는 부분은 없었다.
(말그대로 Multiple Queues 이다보니 Queue를 여러개 만들어서 로딩이 가능한 것이었다.)





https://github.com/1004lucifer/Angular_CreateJS_Wedding/blob/master/app/scripts/services/loaderSvc.js

위의 소스와 같이 여러개의 Queue를 생성한 뒤 각각 loadManifest를 수행하도록 만들었다.

아래와 같이 코드를 수행 시 각각의 manifest를 병렬로 로딩하는 것을 볼 수 있다.


loaderSvc.getLoader().addEventListener("complete", handleComplete);
loaderSvc.getLoader2().addEventListener("complete", handleComplete2);
loaderSvc.getLoader3().addEventListener("complete", handleComplete3);
loaderSvc.loadAssets();
loaderSvc.loadAssets2();
loaderSvc.loadAssets3();



나의 경우에는 병렬로 리소스를 다운로드 해보니 게임에 문제가 생겨서 첫 manifest 로딩 후 바로 게임이 진행되도록 응답속도만 빠르게 수정했다.
그렇기 때문에 리소스를 로딩하는 영역을 나눈 것 외에 병렬로 이미지를 다운로드 하도록 수정하지 못했다. => Link

대신 일단 화면이 보이인 후 사용자의 액션이 취할 수 있게 만든 다음에 다음 리소스들을 지속적으로 다운로드 한다.




2016년 4월 9일 토요일

[Ubuntu] 저사양 동영상 플레이어 - mpv



2010년부터 쓰기 시작한 Dell Vostro V13 노트북을 현재 메인으로 사용하고 있는데..

사양
CPU: Intel Core 2 Duo SU7300 / 1.3 GHz
RAM: 4GB
VGA: Intel GMA 4500MHD




800MB 정도의 동영상은 크게 문제가 없지만 요즘 나오는 동영상들이 2GB 가 넘어가는 상황에서 내가 사용하는 6년차 노트북의 사양으로는 일반 동영상 플레이어를 사용하면 뚝뚝 끊기는 상황이 되어버렸다.

윈도우를 설치해봐도 예전처럼 곰프레이어의 퍼포먼스가 많이 나오는것도 아니고..
일반 동영상 플레이어를 설치할 수 없고 다른 플레이어를 설치를 했었다.
 
우분투도 예외는 아니었다.
VLC 가 일반적으로 많이 쓰이는 것 같던데..
유명한 플레이어를 설치 할 시 동영상이 뚝뚝 끊기거나 영상이랑 음성이 따로 노는 것을 경험 할 수 있었다.

그나마 작년말에 알게된 mpv Media Player 플레이어를 설치하면서 부터 2GB 이상의 동영상도 끊김 없이 볼 수 있었다.



mpv Media Player









2016년 4월 8일 금요일

[IntelliJ] OpenJDK 대신 SunJDK 로 구동되도록 변경 방법




OS: Ubuntu 15.10 Gnome
Tool: IntelliJ 15


지금까지 신경을 안쓰고 있었는데 이제보니 IntelliJ가 OpenJDK로 구동이 되는것을 발견했다.
아무래도 SunJDK가 좀더 퍼포먼스가 빠르지 않을까 싶어 SunJDK로 구동이 되도록 변경을 했다.





아래와 같이 기본적으로 IntelliJ가 OpenJDK로 실행되고 있음을 볼 수 있다.
1004lucifer

lucifer@lucifer-Vostro-V13:/devTools/idea-IU-145.597.3/bin$ ./idea.sh 
OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=350m; support was removed in 8.0
4월 08, 2016 10:14:00 오후 java.util.prefs.FileSystemPreferences$1 run
INFO: Created user preferences directory.
4월 08, 2016 10:14:00 오후 java.util.prefs.FileSystemPreferences$6 run




명령어가 아닌 아이콘을 눌러서 실행한다면 아래의 위치에 로그가 쌓이게 된다.


lucifer@lucifer-Vostro-V13:~/.IntelliJIdea2016.1/system/log$ tail -f idea.log
2016-04-08 22:28:31,101 [      0]   INFO -        #com.intellij.idea.Main - ------------------------------------------------------ IDE STARTED ------------------------------------------------------ 
2016-04-08 22:28:31,131 [     30]   INFO -        #com.intellij.idea.Main - IDE: IntelliJ IDEA (build #IU-145.597.3, 29 Mar 2016 00:00) 
2016-04-08 22:28:31,131 [     30]   INFO -        #com.intellij.idea.Main - OS: Linux (4.2.0-35-generic, amd64) 
2016-04-08 22:28:31,131 [     30]   INFO -        #com.intellij.idea.Main - JRE: 1.8.0_76-release-b18 (JetBrains s.r.o) 
2016-04-08 22:28:31,132 [     31]   INFO -        #com.intellij.idea.Main - JVM: 25.76-b18 (OpenJDK 64-Bit Server VM) 
2016-04-08 22:28:31,136 [     35]   INFO -        #com.intellij.idea.Main - JVM Args: -Xbootclasspath/a:/devTools/idea-IU-145.597.3/bin/../lib/boot.jar -Xms128m -Xmx750m -XX:MaxPermSize=350m -XX:ReservedCodeCacheSize=240m -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -ea -Dsun.io.useCanonCaches=false -Djava.net.preferIPv4Stack=true -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Dawt.useSystemAAFontSettings=lcd -Djb.vmOptionsFile=/devTools/idea-IU-145.597.3/bin/idea64.vmoptions -XX:ErrorFile=/home/lucifer/java_error_in_IDEA_%p.log -XX:HeapDumpPath=/home/lucifer/java_error_in_IDEA.hprof -Djb.restart.code=88 -Didea.paths.selector=IntelliJIdea2016.1 -Didea.jre.check=true 









SunJDK로 변경방법


1. 명령어를 이용해 IntelliJ를 실행하는 경우


vi ~/.bashrc

# 마지막에 아래의 내용을 추가한다. (JDK 경로는 본인의 PC에 맞게 수정)

IDEA_JDK=/sdk/jdk1.8.0_77
export IDEA_JDK





2. 아이콘을 이용해 IntelliJ를 실행하는 경우


vi {_IDEA_HOME_}/bin/idea.sh
ex) vi /devTools/idea-IU-145.597.3/bin/idea.sh

#아래 녹색 부분을 추가해 준다. (JDK 경로는 본인의 PC에 맞게 수정)

#!/bin/sh
#
# ---------------------------------------------------------------------
# IntelliJ IDEA startup script.
# ---------------------------------------------------------------------
#

IDEA_JDK=/sdk/jdk1.8.0_77

message()
{
...









위와같이 작업 후 IntelliJ를 구동하면 이제는 SunJDK로 구동이 되는 것을 볼 수 있다.


lucifer@lucifer-Vostro-V13:~/.IntelliJIdea2016.1/system/log$ tail -f idea.log
2016-04-08 22:41:10,793 [      1]   INFO -        #com.intellij.idea.Main - ------------------------------------------------------ IDE STARTED ------------------------------------------------------ 
2016-04-08 22:41:10,826 [     34]   INFO -        #com.intellij.idea.Main - IDE: IntelliJ IDEA (build #IU-145.597.3, 29 Mar 2016 00:00) 
2016-04-08 22:41:10,826 [     34]   INFO -        #com.intellij.idea.Main - OS: Linux (4.2.0-35-generic, amd64) 
2016-04-08 22:41:10,826 [     34]   INFO -        #com.intellij.idea.Main - JRE: 1.8.0_77-b03 (Oracle Corporation) 
2016-04-08 22:41:10,826 [     34]   INFO -        #com.intellij.idea.Main - JVM: 25.77-b03 (Java HotSpot(TM) 64-Bit Server VM) 
2016-04-08 22:41:10,834 [     42]   INFO -        #com.intellij.idea.Main - JVM Args: -Xbootclasspath/a:/devTools/idea-IU-145.597.3/bin/../lib/boot.jar -Xms128m -Xmx750m -XX:MaxPermSize=350m -XX:ReservedCodeCacheSize=240m -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -ea -Dsun.io.useCanonCaches=false -Djava.net.preferIPv4Stack=true -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Dawt.useSystemAAFontSettings=lcd -Djb.vmOptionsFile=/devTools/idea-IU-145.597.3/bin/idea64.vmoptions -XX:ErrorFile=/home/lucifer/java_error_in_IDEA_%p.log -XX:HeapDumpPath=/home/lucifer/java_error_in_IDEA.hprof -Djb.restart.code=88 -Didea.paths.selector=IntelliJIdea2016.1 -Didea.jre.check=true 






참고: http://stackoverflow.com/questions/8382641/installing-idea-on-ubuntu-11-10/8384111#8384111


2016년 4월 6일 수요일

[IntelliJ] Ubuntu 15 Gnome 에서 한글 입력이 안되는경우




OS: Ubuntu 15.10 Gnome
Tool: IntelliJ 15 IDEA



다른 곳에서는 한글입력이 정상적으로 되는데 유독 IntelliJ 에서만 한글입력이 아예 되지 않았다.
한글이 깨지는 문제가 아니라 아예 한글 입력이 안되는 문제!!

1004lucifer

아래와 같이 해결을 했다.




 1004lucifer







PS.
혹시 위와같이 작업을 했는데도 한글 입력이 되지 않은경우 현재 키보드 입력방식이 어떤 것으로 되어있는지 확인해보기 바란다.
만일 영어로 되어있는 경우 아래와 같이 한국어를 선택해주면 바로 한글입력이 가능해 진다.




[VirtualBox] 해결방법 - '가상 머신 Name 의 세션을 열 수 없습니다.'





OS: Ubuntu 15.10
VirtualBox: VirtualBox 5.0.14_Ubuntu r105127





어느순간 가상머신을 구동하려 하면 아래와 같이 오류메시지가 발생하며 구동이 되지 않았다.


1004lucifer


The device helper structure version has changed.
If you have upgraded VirtualBox recently, please make sure you have terminated all VMs and upgraded any extension packs. If this error persists, try re-installing VirtualBox. (VERR_PDM_DEVHLPR3_VERSION_MISMATCH).

결과 코드: NS_ERROR_FAILURE (0x80004005)
구성 요소: ConsoleWrap
인터페이스: IConsole {872da645-4a9b-1727-bee2-5585105b9eed}




메시지에는 모든 VM을 종료하고 Extension Pack 을 업그레이드 후 다시 시도해 보라고 나와있었지만 최신의 Extension Pack 을 설치했음에도 위와같은 오류메시지가 계속 발생을 했다.






해결방법
1004lucifer


아래와 같이 도움말 => VirtualBox 정보 를 클릭






VirtualBox 의 버전을 확인한다.
아래의 화면을 보면 5.0.14 버전 이라는 것을 알 수 있다.






이제 해야 할 일은 5.0.14 버전의 Extension Pack 을 설치해야 한다.
(https://www.virtualbox.org 홈페이지에 접속한다.)


1. Downloads 버튼을 클릭한다.






2. VirtualBox older builds 를 찾아 링크를 클릭한다.






3. 자신의 버전에 맞는 VirtualBox 버전을 선택한다.
   (나의 경우에는 5.0 이었다.)






4. 위에서 확인한 VirtualBox 의 마이너버전까지 확인하여 해당 버전에 맞는 Extension Pack 을 다운로드 한다.




1004lucifer

이제 다운로드 받은 Extension Pack을 설치한다.
(아래와 같은 메시지가 보여질 수 있다.)






위와같이 작업 후 시스템을 재부팅 시 정상적으로 가상머신을 사용할 수 있었다.





참고:
https://forums.virtualbox.org/viewtopic.php?f=7&t=76004
http://tamxuanla.blogspot.kr/2016/01/solved-if-you-have-upgraded-virtualbox.html