Archive for JAVA

[JAVA jdk] 1.6.x -> 1.8.x in my mac

http://docs.oracle.com/javase/8/docs/technotes/guides/install/mac_jdk.html

 

Determining the Default Version of the JDK

If you have not yet installed Apple’s Java OS X 2012-006 update, then you are still using a version of Apple Java 6 that includes the plug-in and the Java Preferences app. See “Note for Users of OS X that Include Apple Java 6 Plug-in”.

There can be multiple JDKs installed on a system, as many as you wish.

When launching a Java application through the command line, the system uses the default JDK. It is possible for the version of the JRE to be different than the version of the JDK.

You can determine which version of the JDK is the default by typing java -version in a Terminal window. If the installed version is 8u6, you will see a string that includes the text 1.8.0_06. For example:

% java -version
java version "1.8.0_06-ea"
Java(TM) SE Runtime Environment (build 1.8.0_06-ea-b13)
Java HotSpot(TM) 64-Bit Server VM (build 23.2-b04, mixed mode)

To run a different version of Java, either specify the full path, or use the java_home tool:

% /usr/libexec/java_home -v 1.8.0_06 --exec javac -version

For more information, see the java_home(1) man page.

Uninstalling the JDK

To uninstall the JDK, you must have Administrator privileges and execute the remove command either as root or by using the sudo(8) tool.

Navigate to /Library/Java/JavaVirtualMachines and remove the directory whose name matches the following format:Foot1

/Library/Java/JavaVirtualMachines/jdkmajor.minor.macro[_update].jdk

 

reset folder path in eclipse. [build path]

/Library/Java/JavaVirtualMachines\xxxx

 

1. java.lang.UnsupportedClassVersionError 발생 원인

java.lang.UnsupportedClassVersionError는 높은 버전의 JDK에서 컴파일한 class 파일을 낮은 버전의 JDK에서 실행을 해서 발생하는 에러입니다.

2. Java 의 버전 확인 방법

1) 이클립스의 Java 버전

프로젝트명에서 마우스 우클릭 -> Properties -> Java Compiler -> Compiler compliance level 확인

http://comajava.blogspot.kr/2013/11/javalangunsupportedclassversionerror.html

 

java.lang.UnsupportedClassVersionError 때문에 삽질후 기록은 남겨둠.

[안드로이드] 이클립스에서 AndroidManifest.xml 파일문제

아 참내… 살다 보니 참 별별 문제를 다 만나 봅니다.

“androidmanifest.xml file missing”

이라는 문제인데요.. 분명 프로젝트 안에 androidmanifest.xml은 있는데 말이죠….

전에 분명이 되던 플젝인데.. 좀 뭐가 꼬여서 폴더 지우고,

SVN에서 다시 받은 것 받에 없는데…

아!!! 여기서 힌트를 얻었습니다.

저는 SVN에 커밋할 때 /bin 폴더는 제외했었거든요.

이클립스 IDE 안의  프로젝트 익스플로러에서 걍 root 부분에 있는 androidmanifest.xml 파일을 선택하고 CTRL+C

/bin 폴더를 선택해 주고 CTRL+V 해주었습니다.

그리고 빌드 해보니 올라가네요… 아오…

이거 몰라서 플젝 날리고 다시 만드는 삽질 할 뻔 했네요.. ㅋㅋ 이럴땐 좀 느낌 직감이 좋네요. ㅋㅋㅋㅋ

이상입니다.

=====================================================================

“androidmanifest.xml file missing”

1.选择在Eclipse中的文件 (androidmanifest.xml) -> 复制

2. 选择bin文件夹 ->贴

=====================================================================

“androidmanifest.xml file missing” 時に。。。

プロジェクトrootフォルダがありandroidManifast.xmlファイルが存在し、
/ binフォルダにandroidManifast.xmlファイルがない場合は…コピーして入れて、ビルドしましょう。

=====================================================================

 

 

 

[아하] 이클립스에서 만든것을 안드로이드 스튜디오에서….

기존의 프로젝트를 접고 다시 프로젝트 만들어서… 일일이 자바파일을 Copy & Paste 로 옮긴 기억이 있습니다.

아외마러ㅣㅁㄷ지ㅏㅁ줏함둑ㅎ,ㅜㅁㄴ,ㅎ구,ㄴ뭏,ㅁ누,ㅎ

이럴줄 알았으면 임포트 먼저 해볼것을 그랬습니다. 하하하핳하~~~

기존 이클립스에서 만든 프로젝트를 안드로이드 스튜디오에서 임포트 해보니… ㅋㅋㅋㅋㅋㅋㅋ

걍 되네요.. 그것도 아주 잘… ㅎㅎㅎ

이제 아무래도 정말 이클립스를 떠날때가 온 것 같습니다. ㅋㅋ

몇몇 안되는 이클립스 단축키 잊고… ㅎㅎ

안드로이드 스튜디오.. (인텔리 J) 의 단축키를 빨리 외워야 겠네요. 음하하하하~

다 씹어 먹어 주겠습니다. 하하하.

[JAVA] 자바로 장난치기… ー HTML사이트가 급하게 보고 싶을때…

뭐 잘 짠것은 아니고 …. 급하게 필요한 용도로만 만들어서요…

전혀 가다듬어 져 있지 않습니다.

다만, 결과를 일일이 얻기 빡센 작업들에 (혹은 패턴으로 묶인곳 긁어올때)

좀 편하고저 만들어 봅니다.

뭐 그러실 분들은 없겠지만, 퍼가시는 것은 자유입니다.

다만 이 소스 이용하셔서 피해 입는 모든 내용에 대해서는 가지고 가셔서 사용하신 분이 책임 지셔야 합니당~ ^^

 

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.FileWriter;

import java.io.IOException;

import java.io.InputStreamReader;

import java.net.URL;

import java.net.URLConnection;

import java.util.ArrayList;

import java.util.List;

 

import javax.swing.text.Document;

 

 

public class JapanNameGetMain {

List <String> address = new ArrayList<String>();

public JapanNameGetMain() {

address.add(“http://babyname.ojaru.jp/man/otoko-a.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-i.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-u.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-e.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-o.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ka.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ki.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ku.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ke.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ko.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-sa.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-si.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-su.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-se.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-so.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ta.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ti.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-tu.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-te.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-to.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-na.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ni.htm”);

// address.add(“http://babyname.ojaru.jp/man/otoko-nu.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ne.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-no.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ha.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-hi.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-fu.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-he.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ho.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ma.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-mi.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-mu.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-me.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-mo.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ya.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-yu.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-yo.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ra.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ri.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ru.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-re.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-ro.htm”);

address.add(“http://babyname.ojaru.jp/man/otoko-wa.htm”);

}

 

public List<String> getAddress(){

return address;

}

public static void main(String[] args) {

JapanNameGetMain jn = new JapanNameGetMain();

List<String> adr = jn.getAddress();

List<String> ret = new ArrayList<String>();

System.out.println(“start get data”);

String hap = null;

for (int idx = 0;idx<adr.size();idx++){

 

//System.out.println(idx+” / “+adr.size());

System.out.print(“.”);

try

{

URL yahoo = new URL(adr.get(idx));

URLConnection yc = yahoo.openConnection();

BufferedReader in = new BufferedReader(

new InputStreamReader(

yc.getInputStream(),”Shift_JIS”));

String inputLine;

 

while ((inputLine = in.readLine()) != null) {

// System.out.println(inputLine);

if (idx>0){

hap=hap+inputLine;

}else{

hap = inputLine;

}

}

in.close();

 

} catch (Exception e) { e.printStackTrace(); }

ret.add(hap);

//System.out.println(“”+idx+”…”);

} // close for

 

System.out.println(“\ndata analysis”);

for (int idx = 0;idx<ret.size();idx++){

System.out.println(idx + ”  —  > ” +ret.get(idx));

 

try {

////////////////////////////////////////////////////////////////

BufferedWriter out = new BufferedWriter(new FileWriter(“out.txt”));

String s = ret.get(idx);

 

out.write(s); out.newLine();

 

out.close();

////////////////////////////////////////////////////////////////

} catch (IOException e) {

System.err.println(e); // 에러가 있다면 메시지 출력

System.out.println(“\nend fail”);

}

}

System.out.println(“\nend success”);

 

}

}

 

결론은 긁어와서 파일로 떨구는 것이 다 이네요.. ㅋㅋ

자바 JSP 서버 쪽을 건드리다 java.lang.reflect.InvocationTargetException 을 만났습니다.

 

아오….

디버그 안찍어 보고 아 왜 안되니? 응? 응?

을 연발하다가 가까스로 찍어보니 요녀석 오류 였네요. 아오.. 내 몇시간.. ㅠㅠ

디버그 생활화 해야 겠습니다. 꾸뻑. ㅋ

 

출처 : http://northface.tistory.com/1 님 감사합니다.

 

java.lang.reflect.InvocationTargetException

Normally “java.lang.reflect.InvocationTargetException” occurs when java compiler finds
2 different classes with same name in 2 different packages.
when u r importing both classes at a time and when you r trying to create object of that class
it throws “java.lang.reflect.InvocationTargetException” exception .

The solution is that when you are creating the object of the class use package name
also along with class name so that compiler knows what class it has to use.

– answer by google –

해석을 하면 InvocationTargetException이 발생한 이유가
자바 컴파일러가 2개의 서로 다른 패키지 안의 같은 클래스를 찾은 경우 에러가 발생한다고 되어 있다.
해결 방법은 객체를 생성할 때 패키지명을 써서 경로를 표시해서 컴파일러가 알 수 있게 하라고 되어있다.

 

*** 추가 ***

그래도 해결 못하고 헤매고 있다가 아래 블로그 발견.. 문제는 @Autowired 였군요. 훔…

http://blog.daum.net/_blog/BlogTypeView.do?blogid=0NDMh&articleno=142&categoryId=4&regdt=20120810164318

 

감사합니다. ㅋㅋㅋ