리눅스 개발/이클립스

이클립스 PHP Remote Systems에서 FTP와 함께 코드자동완성 사용

꿈꾸는새벽별 2013. 1. 8. 11:50

 

 

▷ 이클립스 PHP PDT 플러그인 사용.

▷ 이클립스 Remote Systems 플러그인 사용.

 

1.[이클립스에서 Remote Systems플러그인 사용시 코드 어시스트

    및 자동완성 기능 사용하기]

 

1. 이클립스  Remote Systems 에서 계정 접속을 생성 하면

   workspace에 .project.xml 설정 파일을 생성한다.

 



	RemoteSystemsTempFiles
	
	
	
	
	
	
		org.eclipse.rse.ui.remoteSystemsTempNature
	


 

2. PHP (PDT) 플러그인 PHP Explorer에서 PHP 프로젝트 하나를 생성한다.

  1번과 마찬가지로 workspace에 .project.xml설정 파일을 생성시킨다.

 



	Test
	
	
	
	
		
			org.eclipse.wst.validation.validationbuilder
			
			
		
		
			org.eclipse.dltk.core.scriptbuilder
			
			
		
	
	
		org.eclipse.php.core.PHPNature
	


 

 

Remote Systems 는 이클립스의 사용자 workspace에 RemoteSystemsTempFiles라는
작업용 폴더를 만들어 linked source로 지정 후 ftp의 파일을 다운받아
작업후 재업로드하는 형식으로 작동된다.

'RemoteSystemsTempFiles'폴더는 자동생성된 후 설정파일로
xml포맷의 .project라는 파일을 생성하는데 이 설정파일이 만들어질때
코드완성및 validation에 필요한 설정값이 제외된 채 만들어지게 된다.
의도한 바인지 아닌지는 모르겠지만 이게 바로 버그의 원인.

해결책은 (모든 작업의 백업은 기본...)
1. 이클립스 PHP Explorer에서 아무 이름으로 프로젝트를 하나 생성. 예를 들어 Test 라고 하겠음.
2. 열려진 Remote Systems 리모트 폴더를 다 닫아주고 이클립스 종료.
3. 로컬상의 이클립스 workspace로 이동.
4. 폴더중에 'RemoteSystemsTempFiles'를 열어 .project파일(1번 xml내용)을 열어서 내용 복사.

 



	RemoteSystemsTempFiles
	
	
	
	
	
	
		org.eclipse.rse.ui.remoteSystemsTempNature
	


 

 

5. RemoteSystemsTempFiles 폴더 삭제.
6. 이클립스에서 만든 프로젝트인 Test 폴더내의 .project파일을 열어서

 



	RemoteSystemsTempFiles
	
	
	
	
		
			org.eclipse.wst.validation.validationbuilder
			
			
		
		
			org.eclipse.dltk.core.scriptbuilder
			
			
		
	
	
		org.eclipse.rse.ui.remoteSystemsTempNature
		org.eclipse.php.core.PHPNature
	

 

빨간색 부분처럼 수정 내지는 추가해준다. php프로젝트이므로
jsp는 약간 다를 수도 있겠지만 구조적으로는 동일하리라 생각함.

7. Test 폴더 이름을 RemoteSystemsTempFiles로 바꾸어 준다.
Test 폴더 안에 있는 다른 하위폴더나 파일은 그대로 유지.

 

8. 이클립스를 켜고 리모트 서버의 파일을 아무거나 열어서 코드 어시스트가 되는걸 확인.
php Explorer탭을 열면 Test가 사라졌다고 alert창이 뜨는데 걍 확인하면 알아서 폴더 정리해줌.

 

로그창에 에러가 주루룩 뜰수도 있는데 처음 켰을때 최초 한번만 뜨므로 걍 로그클리어 하고 신경꺼도 됨.
다음에 다시 이클립스를 켰을때는 뜨지 않으니 걱정말자..

요지는 프로젝트폴더처럼 인식시켜줘서 코드 어시스트가 제대로 작동하도록 해주는 것.

 

 

2.[이클립스에서 사용자 정의된 코드힌트 만들기 및 사용 방법]

 

▷ 사용 위 1번에서 설명한 Remote Systems 에서 가능하도록 설정한다.

 

PHP Explorer는 프로젝트를 생성시키면  .buildpath와 .project 의 xml포맷 파일을 생성시킨다.

위에서 .project 파일은 설명했고 .buildpath에서 자신이 정의한 코드힌트를 직접 정의 연결해

사용할 수 있는 연결 코드가 있다.

 

소스를 보자

 



	
	
	

 

위 소스에서

<buildpathentry combineaccessrules="false" kind="prj" path="/PHP_Libs"/>

이 소스부분이 사용자 코드 자동완성이 가능하게 하는 부분이다.

 

PHP_Libs라는 이름은 PHP Explorer에서 생성한 PHP프로젝트 이름이고

이안에 생성한 mos.php 소스는 아래와 같다.

 

function good($server = null, $username = null, 
      $password = null, $new_link = null, $client_flags = null) {
}

 

$good를 입력하면 자동 완성 기능 함수를 사용할 수 있다.

 

이상.