이클립스 + subclipse의 조합은 최악이라고 얘기했다.

이클립스 + subversive의 조합을 추천했는데, 가끔씩 이런 에러가 나서 놀랫다.

 

구체적으로 말하면, Team->share project-> 기존 sVN에서 골라서 프로젝트 소스를 올릴려고 했더니..

eclipse svn authentication canceled 하면서 안된다. 여러 번 해도 안된다.. 흘..

 

구글링을 해보니. 다음과 같이 SVNKit + javaHl의 조합을 추천한다.

 출처

 http://agaricdesign.com/note/svn-authentication-cancelled-problem-with-eclipse-pdt

 

 

SVN authentication cancelled problem with Eclipse PDT
  
 Select ratingPoorOkayGoodGreatAwesomePoorOkayGoodGreatAwesome
 
  
By Benjamin Melançon
on 03 Aug
0 comments
Key words and phrases
Eclipse PDT Subversion error
Tags
PC/Other Incomplete Problem Description
eclipse svn authentication canceled

discussion of seemingly related problems:

http://dev.eclipse.org/newslists/news.eclipse.technology.subversive/msg0...

http://svnkit.com/tracker/view.php?id=107

 

 

결국은 이렇게 처리했다.

 

 

Team->share project-> 새 SVN 추가(계정 추가) -> SVN 디렉토리 선택 :

OK 완료~

 

Posted by '김용환'
,

subclipse는 쓰지 말자.. 흘..

 

설치 꼬이는 문제와 함께 버젼 문제, 사용상 이상한 점이 많다.

 

결국 subversive로 이동~

 

 

 

http://www.eclipse.org/subversive/documentation/gettingStarted/aboutSubversive/install.php

 

Posted by '김용환'
,

이클립스 플러그인 소개

 

이클립스 memory monitor, status monitor 는 다음의 주소에서 다운받을 수 있다.

 

http://www.kyrsoft.com/downloads/downloads.html

 

 

 

 

 

 

 

Posted by '김용환'
,

 

설정후, shift + F2만 누르면 브라우져가 떠서. 보기가 편하다!!

 

출처 :

http://www.cs.laurentian.ca/badams/c1047/eclipse-tutorials/javadoc-tutorial.html

 

 

Viewing Javadoc for the JDK API

To view the standard Java JDK API documentation for all the classes that come with Java open up the tree in the "Package Explorer" for the JRE System Library, select rt.jar (the runtime library)

From the "Navigate" menu select "Open External Javadoc" and you will see the Java API documentation. The default location of the documentation is Sun's website so the URL in the browser will be something like

http://java.sun.com/j2se/1.5.0/docs/api/index.html

We want to use our own local version of the documentation in

file:/C:/Program Files/Java/jdk1.5.0_04/docs/api/

so that we don't need to connect to the internet each time we want to view the documentation.

To make the change right click on the rt.jar entry in the "Package Explorer" and select "Properties" to get the dialog box

We need to change the URL in the "Javadoc location path". You can either type in the local value directly or use its browse button to navigate to

Click "OK" and you should have the dialog box

showing the local URL

file:/C:/Program Files/Java/jdk1.5.0_04/docs/api/

Click "Apply" and then "OK".

Now to see the API documentation select rt.jar and choose "Open External Javadoc" from the "Navigate" menu (shortcut is Shift F2). Your local URL will now be shown in the browser address bar.

Viewing Documentation in the Editor Window

It is possible to show Java documentation in the editor window. From the "Package Explorer" open the docs directory for project geoproject and double click the file index.html. The editor window will now show

Viewing Documentation From Source Code

Another way to view documentation for a particular class in your source code is to select the class name and the press "Shift F2". To try this load the file Circle.java into the Editor. Select the word Point

Now press "Shift F2". The documentation for the Point class will now appear in a browser window.

In the same way you can also select a package name and the package documentation will appear.

Posted by '김용환'
,

 

* 현상

이클립스에서 웹서버를 server를 실행할때, 다음과 같이 에러가 나는 경우가 있다.

com.sun.tools.javac.Main 을 찾으려 하는데, classpath에 있지 않아서 에러가 난다.

 

Exception:
Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK
at org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory.getCompiler(CompilerAdapterFactory.java:106)
at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:935)
at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:764)
at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:282)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:328)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:427)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:142)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:536)

 

 

* 해결방법

tools.jar를 jdk 또는 톰캣의 lib  디렉토리에 tools.jar를 복사한다.

Posted by '김용환'
,

 

이클립스에서 Team Sync with Repository를 사용할때, 스페이스를 무시할 수 있다.

 

general 에서 compare/patch를 메뉴를 선택하여 ignore white space를 선택하면 된다.

Posted by '김용환'
,

Create Code Templates for Logging

 

Java > Editor > Templates 에서 logger 템플릿을 생성한다.

 

 

 

입력창에서 Ctrl+Space 를 사용하면 코드 템플릿을 쓸 수 있다.

 

public class CatalogItem {
  private static Logger logger = Logger
      .getLogger(CatalogItem.class.getName());

 

 

 

특정 패키지는

 

Java > Type Filters 를 이용하여 특정 패키지를 추가할 때 ( Ctrl+Shift+M ) 제외시킬 수 있다.

Posted by '김용환'
,
Posted by '김용환'
,
자바와 MS진영 (비교자체가 약간 어색하지만, 일리가 있다. 자바는 어느정도 반 MS의 진영의 축을 담당하기 까닭에..)의 SDK에서 지원하는 리팩토링 기능을 조사해봤다.

Visual Studio 2005에서 드디어 리팩토링 기능이 지원되었다. 아직은 이클립스 수준까지는 아니지만, 어느정도 쓸만하다고 본다. 개인적으로 Visual Studio 6를 쓰면서 느끼는 점은 컴파일이 빠른 거 외엔 Eclipse를 넘어서기기 어렵다.( 사실 컴파일이 빠른 것은 언어적인 차원이라서 비교 대상 자체는 아니다. 표현자체가 좀 거시기하다.)

하여튼, MS에서 나온 SDK가 리팩토링의 기능을 SDK에 넣은 것 자체가 수요가 있었기에 이 정도라도 나온게 아닌가 싶다.

<Visual Studio 2005>

http://msdn.microsoft.com/vcsharp/default.aspx?pull=/library/en-us/dnvs05/html/vs05_refac.asp

Refactoring Technique Meaning in Life

Extract Method : This allows you to define a new method based on a selection of code statements.
Encapsulate Field : Turns a public field into a private field encapsulated by a .NET property.
Extract Interface : Defines a new interface type based on a set of existing type members.
Reorder Parameters : Provides a way to reorder member arguments.
Remove Parameters : As you would expect, this refactoring removes a given argument from the current list of parameters.
Rename : This allows you to rename a code token (method name, field, local variable, and so on) throughout a project.
Promote Local Variable to Parameter  : Moves a local variable to the parameter set of the defining method.


<Eclipse>

http://www.cs.umanitoba.ca/~eclipse/13-Refactoring.pdf

Type 1 . Physical Structure
. Rename
. Move
. Change Method Signature
. Convert Anonymous Class to Nested
. Move Member Type to New File
Type 2 . Class Level Structure
. Push Down
. Pull Up
. Extract Interface
. Generalize Type (Eclipse 3 only)
. User Supertype Where Possible
Type 3 . Structure inside a Class
. Inline
. Extract Method
. Extract Local Variable
. Extract Constant
. Introduce Parameter (Eclipse 3 only)
. Introduce Factory (Eclipse 3 only)
. Encapsulate Field
Posted by '김용환'
,

에디터 폰트 설정방법

 

from okjsp.

Posted by '김용환'
,