퇴근5분전

 지금 프로젝트 소스가 이클립스열면 9개 프로젝트가 묶여서 있어서 열리는데... 

이걸 매일 출근하면 svn업데이트하고 개별 빌드(ant, maven)를 각각 하고 ... 그 다음 이클립스 톰캣 실행으로 올리는데... 

이게 귀찮아서... 버튼 하나로 하고 싶어서 넣다가... 플러그인 소스를 날려먹었네 ㅡ.ㅡ;

 3주 남았는데... 플러그인 소스 복구하기 귀찮아서... 그냥 사용하던 jar파일 유지하고 압축해놨다.

 

 이클립스의 [Debug As] 에 두번째 첫번째등...commandId를 이용해서 실행하면 될 것 같았는데... 또 팝업이 뜨는거라서...안되는건가? cmd로 처리해보려다가... 그건 또 설치해야 되더랑... 기간이 너무 짧게 남아서...

 다른것에 집중하자... 

 

 

 이번 컨트롤러 , 뷰 띄우는거 만들면서... 

 

-컨트롤러 ------- 경로 [오픈]

- 뷰1 ---------- [오픈]

- 뷰2 ---------- [오픈]

 ...

- 뷰N ---------- [오픈]

 

이런 형태로 띄워서 오픈 하면 소스를 띄우는 형태로 구성하는데... 

저 간단한 레이아웃을 ㅠㅠ 2시간이나 눈 빠지게 작업했다. 

 

일단 레이아웃도 잘 나오고... 소스도 잘 뜨고... 

하~ 빡시다... 

 

가끔 자바로 된 프로그램들 UI보면... 이해가 된다... 왜 그런지.. 

 

###################################################### 

 [뷰 찾기] 로 가져왔다. 단축키는 [Alt + `]

      편집기에서 컨트롤러 url을 선택 후 단축키를 누르면 [뷰 찾기] 탭에 

      1. RouteMapping이 속해있는 controller.java 소스경로

         [Java Open] 버튼 클릭시 해당 소스가 열린다.

      2. 해당 메소드내에 return되는 뷰 페이지 정보

       [JspOpen] 버튼 클릭시 해당 소스가 열린다.

   -- 아래 디자인 하느라 쌩쑈했더니 아직도 눈아프고 머리아프다.

  Bing AI Chatbot에 혹시 jsp에서 호출하는 RouteMapping으로 대응하는 뷰 이름 찾는 방법이 있는지 

물어보니.. 없다네...? 잘 못찾았나.. 암튼... 다들 없이 그렇게 사는 것 같은데... 

 

Ctrl + H로 검색하면 프로젝트 6개 되는거 다 뒤져서 나오는데... 시간도 그렇고... 

다른거 찾고 넘어가면 또 다시 찾을때 또 그만큼의 시간이 걸리고... 

검색해서 창을 열고... 다른거 검색해서 다시 창을 열면.. 좀전에 연 창에 내용이 나와버린다. 

기존 내용을 보려면... 다시 검색하고... 

 

그래서 너무 짜증나서 만들었다. 50일정도 남은 플젝에서 얼마나 쓰겠냐 싶지만...

플러그인 구현에 여러 추가기능 공부도 할겸해서... 만든거에 의미를 둔다. 

# 이클립스 특정 프로젝트 대상으로 검색하기?

https://wakestand.tistory.com/902

Ctrl + H에서 지정하는게 있긴한데... 난 이것보다.. 

현재 띄운 편집창 소스의 프로젝트를 기준으로 자동 설정되는 기능은 없으려나.. 

그러면... 좀더 빠르게 찾을텐데... 

전체 찾기를 선택으로 한다든가... 

이클립스 플러그인 수정하면서... java 코딩이 생각보다 많이 느려서...?

 

프로젝트 폴더의 소스파싱은 C#으로 후딱 하고... 규격화 시켜서 

java project의 workspace 와 동일레벨의 폴더 mapping에 몽땅 파일로 저장시키고

eclipse plugin에서 편집창에서 선택된 단어로 mapping 폴더의 파일을 검색하고 

내용을 꺼내서... 플러그인에서 필요한 기능을 구현했다. 

 

만들려는 기능

:: controller의 RouteMapping Value를 수집하여 파일명으로 삼고. 

해당 되는 뷰 url을 파일 내용으로 삼아서 정보를 일부 추가하여 파일에 추가적으로 기록!

:: 이클립스 편집기(jsp)에서 컨트롤러 호출 처리부분을 선택하고 단축키를 누르면

해당 뷰> 페이지 목록을 보여주고 -> 버튼 눌러서 해당 편집창을 띄워준다.

현재 진행상황 :: 파일 편집창까지 띄우는 것들 확인. java swing? window builder라는걸 써야 하는데... 

winform처음 할때 동적으로 집어넣는 느낌? 이랄까??? 구려..... UI쪽 조금 고치면 끝난다. 

 

오늘 겁나 이상한일? 이 생겼다. 

 

C#로 UTF8 포맷으로 파일에 기록

java로 UTF8 포맷으로 해당 파일을 읽었다. 

 

자꾸 이클립스에서 에러가 나서... 뭐지하고 하나 하나 비교하던 중... 골때린걸 찾았네...

파일의 전체경로를 저장해놓은 부분이 있는데... 

익스플로어에 붙여넣으니 자꾸 인터넷이 열린다? ... 

메모장에 붙여넣고 실제 파일경로와 디버깅으로 읽어온 경로를 비교해보면 눈으로 보이는 것은 똑같다.

 

파일에서 읽어온 경로를 window cmd에 붙였더니... 드라이브 문자가 글자가 깨졌네...

C:\ <--여기서 C가... 이상한 문자로 인코딩이 되어 있네?

C로 보이는데... C가 아님??

 

window cmd 창에 붙여보니  'C'문자가 

이렇게 보임. 

 

그래서 ASCII 로 둘다 변환해서 처리를 했다. 

아직 무슨 차인지는 모르겠고... 내일 완성 후에... 왜 그런지 찾아봐야겠다. 

똑같은 UTF8인데 왜 저런거지??

HandleBars 템플릿?

# 10) Java2023. 1. 16. 21:38

https://handlebarsjs.com/playground.html

 

Handlebars

 

handlebarsjs.com

 

 오늘 소스 고치는데 또 처음 보는게 있네... 

우아.... 대단해... 소스 하나에 다양한 맛이나.....

 

만들어진 플러그인 프로젝트를 Export 한다.

 

>Next

 

>Directory 설정을 한다.

    D:\자바\EclipseRPC 지정하였고 finish 버튼 클릭하면

    Plugins폴더가 생긴 배포파일이 생성된다.

 

 

 

파일을 사용중인 이클립스가 위치한 폴더로 가면

/plugins 폴더가 있는데 이클립스를 끄고, 붙여넣기 하면 된다. 

만약, 이전 플러그인(dm_xxx.jar) 파일이 있으면 삭제 붙여넣기 한다.

   ( 파일이름 뒤에 시간이 붙어서 생성되므로 삭제후 붙여넣기. )

 

이클립스를 시작!!

 

** 배포하고 인코딩 안맞아서

 파일도 속성에서 MS949 기본으로 맞추고.

 window > preference > general

    . Workspace ms949

    . Content type 에서 java class file ms949

'# 10) Java' 카테고리의 다른 글

Java Files.readAllLines() 와 C# File.ReadAllLines() UTF8?  (0) 2023.07.12
HandleBars 템플릿?  (0) 2023.01.16
Eclipse Plugin View 만들기.  (0) 2023.01.12
플러그인 ... 개발!  (0) 2023.01.11
오... 드디어... 해결이 되었다!  (0) 2022.12.15

기본 helloworld command 생성하고

 

플러그인 프로젝트의 META-INF MANIFEST.MF 파일 열기

  • Extensions 탭을 보면

 

Org.eclipse.ui.views 추가하여

 

뷰를 생성하고

     : 프로퍼티 뷰어로 설정하였다.

     ; class* : src아래 view package 만든 class 파일을 만든다. 그리고 해당 class 이름을 적어준다.

 

public class SampleView extends ViewPart {

         public SampleView() {

         }

         @Override

         public void createPartControl(Composite parent) {

         }

         @Override

         public void setFocus() {

         }        

}

 

Viewpart 상속해주고 두개의 override 메소드를 생성해준다.

 

** 윈폼 화면을 만들어야 하는데… 마켓플레이스에서 Window Builder 설치해줘야 한다.

 

>> https://archive.eclipse.org/windowbuilder/1.9.1/   현재 WindowBuilder가 1.10인건지? 설치가 안됨? 

 난 자바 버전 1.8이니... 스택오버플로우에서 ... 1.9.1 되었다기에 나도 설치하였다.

> help > install new software에서 해당 링크로 설치!

 

 

>>  윈도우 빌더로 띄웠을때 보여지는 디자이너

( 아래 세개의 !, .java파일을 마우스 우측버튼 클릭 Open With > WindowBuilder Editor 띄운다. )

 

그리고 커맨드 핸들러에서 뷰를 띄울때…

 

   String viewId = "dm.view1";  // id

   IViewPart vp = HandlerUtil.getActiveWorkbenchWindow(event).getActivePage().showView(viewId);                

   dm.view.SampleView sv = (dm.view.SampleView)vp;

   sv.setDescript( text.trim() ); // 뷰에 만든 메서드로 text 전달.

 

 

 

view 예제)

http://udig.refractions.net/files/docs/latest/1.3.2-SNAPSHOT/developer/view_extension_point_example.html

'# 10) Java' 카테고리의 다른 글

HandleBars 템플릿?  (0) 2023.01.16
Eclipse Plugin 배포( 로컬 eclipse에 적용하기 )  (0) 2023.01.12
플러그인 ... 개발!  (0) 2023.01.11
오... 드디어... 해결이 되었다!  (0) 2022.12.15
오늘도... 개 삽질... 슈발~  (0) 2022.12.14

 이클립스로 자바 개발을 하고 있는데... 

<c:spring bundle="${bundleName}" key="code" /> 

<c:fmt code="code">

이런식으로 멀티랭귀지를 지원한다. 

근데... 이게 properties 파일을 검색해서 어떤 단어를 바꾼건지 ... 일일이 검색?을 해야 한다. 

한두개도 아니고... 검색을....

 기존에 개발하고 계신분들한테 뭔가 다른 방법이 있나 물어봤더니... 그런거 없고 그냥 검색한단다... 

아이고~~~~~~~~~

 

 그래서 일단은 C# 윈폼으로 properties 파일을 읽어다가 검색을 하거나 검색된 키=값 을 위에 포맷으로 만들어주는 프로그램을 만들어 쓰고 있다. 

 

 그러다가 시간이 좀 남길래... 이클립스 플러그인을 깔짝 거려봤다.

기본적인 내용은 모두 확인 했다. 

 

--------------------------

아래 샘플은 2020-06 으로 사용하고 있는 버젼과 맞추었다. 

 

소프트 웨어 다운로드

https://www.eclipse.org/downloads/packages/release

 

해당 년도 버전을 받아서 아래 RCP and RAP 다운로드 하여 압축을 해제.

Eclipse IDE for RCP and RAP Developers

 

# 프로젝트 생성

  -> Create a Plug-in Project 생성

 

 

  • Overview 에서

 

실행하면  Launch an Eclipse application in Debug mode 로 실행해보면… 메뉴가 올라가 있다.

 

Extension 탭에서…

해당 메뉴이다.

 

  • menuContribution 추가.

 

 

  • 새로 추가한 menuContribution 에서 locationURI

popup:#AbstractTextEditorContext?before=additions ( 모든 편집기 컨텍스트 메뉴에 추가 )

 

 > 해당 menuContribute 컨텍스트 메뉴를 New > menu 등록

 

등록된 menu Label Dokebi 등록

 

  • Menu Command 등록.( 위와 같음. )  ::등록한 menu를 선택하고 command를 추가하는 것임. 

commandId [Browser] 버튼 클릭하여 검색 : Demo_TextContextMenu.commands.sampleCommand

 

 

실행하면

 

*** LocationURI 에 지정하면 팝업 메뉴에 사용할 메뉴로 추가 할 수 있다.

popup:org.eclipse.ui.popup.any?after=additions  ( 모든 컨텍스트 메뉴에 추가. )

popup:#CompilationUnitEditorContext?before=additions ( 편집기 컨텍스트 메뉴에 추가 [.java] )

popup:#TextEditorContext?before=additions ( 텍스트파일 컨텍스트 메뉴에 추가 [.txt, .jsp] )

popup:#AbstractTextEditorContext?before=additions ( 모든 편집기 컨텍스트 메뉴에 추가 [.txt, .java] ) 

 

-- jsp가 열린줄 알았으나... 플러그인 디버깅 할때 뜬 이클립스는 jsp를 인식할수 없는 상태로 떠서... 그게 jsp가 되는줄... 

 

//jsp는 아래 문구로 등록.

popup:org.eclipse.jst.jsp.core.jspsource.source.EditorContext?before=additions

 

 

*** 여기에서 선택된 텍스트 가져오기, 설정하기등.... ... 

 

// 편집기에서 선택한 텍스트만 추출 ( 아... 어디서 찾았는데 출처 안적어놨네... )

private ITextSelection getSelection(ITextEditor editor) {

     ISelection selection = editor.getSelectionProvider()

            .getSelection();

     return (ITextSelection) selection;

}

 

private String getSelectedText(ITextEditor editor) {

     return getSelection(editor).getText();

}

 

// 현재 선택된 파일의 프로젝트 정보.

IEditorPart editor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();

if (editor instanceof ITextEditor) {

         ITextEditor textEditor = (ITextEditor)editor;

         IEditorInput input = editor.getEditorInput();

         IProject project = input.getAdapter(IProject.class);

         if (project == null) {

               IResource resource = input.getAdapter(IResource.class);

                if (resource != null) {

                   project = resource.getProject();

                }

         }         

}   

 

// 메시

IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindowChecked(event);

    MessageDialog.openInformation(

window.getShell(),

"Demo_TextContextMenu",

"Hello, Eclipse world >> " +  "메시.");

 

** 인터페이스간 충돌인지? import가 잘못된건지... 

충돌이 나거나 import안되고 빨간줄 뜨고... 난리도 아님.

플러그인 overview 탭옆에 dependency 탭에서 필요한것은 추가가 필요하다. 

 

일단 오늘은 톰캣에서 알수 없는 오류는 없었다. 

 

1. maven 설정된 프로젝트는 pom.xml -clean - compile 하고 

2. 해당 프로젝트를 project > clean 한다. 

   이때 자동 빌드 설정을 끄면  

빌드 관련 선택사항이 나오는데, 아래 build only the selected ... 로 체크하고 클린! ( 위 스샷은 웹상에서 캡쳐 떠온것이다. )

 

 이것으로 빌드와 톰캣 시작 관련 이슈는 끝난것 같다.

 

오류를 볼때마다 프로젝트 클린하고 maven - clean - complie등을 돌렸을때, 어쩌다 되고 안되고 했던건 순서 때문이었을까? project clean 이라는 메세지가 초기화 느낌? 이어서... 클린하고 메이븐 다시 빌드하곤 했었는데... 

또 구글링하면 프로젝트 클린, 톰캣 클린 관련 글이 나오는데 이것도 순서가 있었지만... 내가 And로 보고 둘다 클린하면 되는 것처럼 보여서 순서없이 진행해서 그랬으려나? ... 

 

----------------------------------------------------------------------------------------------------------------------------------------------

 

https://huelet.tistory.com/entry/%EC%9D%B4%ED%81%B4%EB%A6%BD%EC%8A%A4-%ED%81%B4%EB%A6%B0clean%EA%B8%B0%EB%8A%A5

 

이클립스 클린(clean)기능

가끔 이클립스가 미쳐돌아갈때가있다. 있지도 않은 에러가 있다고 하거나, 잘 되던 코드가 갑자기 안된다거나, 내 눈앞에 떡하니 보이는 클래스파일을 인식을 못한다거나... 그러할때 쓰는 방법

huelet.tistory.com

여기에서 보여주는 validate는 눌렀다가... 이클립스가 멈췄다! 

위 블로그 설명에서는 "클린 기능은 파일을 지우는 기능이 아니라, 이클립스가 사용하고 있던 정보나 class를 전부 삭제하고 다시 만드는것이다." 

 

 

https://dolphins-it.tistory.com/234

 

메이븐(Maven)이란 무엇인가?

Spring boot를 사용하게 되면서 maven이라는 것도 처음 사용해보게 되었다. 물론 사용하는거야 대충 뭔지만 알고 구글링하면서 사용해도 되지만 maven을 정확히 이해하고 사용하기 위해서 정리를 해

dolphins-it.tistory.com

메이븐 Clean 관련글을 보면 target 폴더의 내용을 모두 지우는 작업을 진행한다. 

:: ui에서는 maven 창이 떴을때 Goals에 명령어를 넣으면 되는 거였구나!

 

https://velog.io/@godkimchichi/Maven

 

Maven을 이용한 빌드와 배포

201203 maven 보강

velog.io

오... OX로 개발과 메이븐 영역을 구분지어 보여준다. ( 보여주는 구조만 다를뿐 같은거라고 써있는것 같다. )

 

 

메이븐이란?

https://goddaehee.tistory.com/199

 

[Maven] Maven 이란? (정의, 예제)

[Maven] 메이븐 이란? (정의, 예제) 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ 메이븐 알아보기 ] 입니다. : ) 1. 빌드 (Build) #1 빌드란? - 소스코드 파일을 컴퓨터에서 실행할 수 있는 독립 소프트웨

goddaehee.tistory.com

라이프사이클 

     clean | validate | compile | test | package | verify | install | site | deploy

clean : 빌드시 생성되었던 파일들을 삭제하는 단계

complie : 프로젝트의 소스코드를 컴파일 하는 단계 

       > src/main/java  하위디렉토리 모든 소스가 컴파일 된다. 

test : src/test/java, src/test/resources 테스트 자원 복사 및 테스트 소스코드 컴파일

package : 컴파일과 테스트가 완료된 후 jar, war 같은 형태로 압축하는 작업.

install : 패키지를 로컬 저장소에 설치하는 단계       

site : 프로젝트 문서와 사이트 작성, 생성하는 단계 

deploy : 만들어진 package를 원격 저장소에 release 하는 단계 

:: 모든 빌드는 이전 단계가 성공적으로 실행되었을때 실행.

 

Maven 설정파일 :: MAVEN_HOME/conf 디렉토리에 위치 settings.xml의 설정

  :: 개발자 PC로 다운로드 하는 위치 USER_HOME/.m2/repository 인데 settings.xml에 지정, 변경 가능.

 

pom.xml :: 프로젝트의 root에 존재, 프로젝트마다 1개 

               :: 프로젝트의 모든 설정, 의존성등을 알 수 있다.

 

----------------------------------------------------------------------------------------------------------------------------------------------

 

Maven - clean complie을 하고

project clean build 가 된다라면 일어나는 일은??

 

- 빌드시 생성된 파일들을 삭제.

- src/main/java 하위 디렉토리의 소스를 모두 컴파일

- 이클립스가 사용하고 있는 정보나 .class파일을 삭제하고 다시 만든다.

- (이클립스)빌드라는게 뭘 하는지에 대해서는 안써있네? 

    일반적인 개념은 아래와 같다.

    :: 소스코드(.java), 프로젝트에서 쓰인 각각의 파일 및 자원(.xml, .jpg, .properties)를

      JVM또는 톰캣, WAS가 인식할 수 있는 구조로 패키징 하는 과정 및 결과물

 

음... 내용을 유추해보면 소스파일을 수정하고 나면... 프로젝트 클린 빌드 하고

메이븐 clean, compile 해도 되는건가? 

아니면 clean을 빼고 compile만 하면? 

 

maven도 빌드 도구이니까... 

다만, 이클립스 클린은 지우는게 아니고, 새로 만드는 기능이라는 것!

새로 만든걸로 > maven 컴파일을 하면 되는거 아닐까? 

 

톰캣 관련해서는 뭘 하는지는 ... 다시... 시간내서... 

'# 10) Java' 카테고리의 다른 글

Eclipse Plugin View 만들기.  (0) 2023.01.12
플러그인 ... 개발!  (0) 2023.01.11
오늘도... 개 삽질... 슈발~  (0) 2022.12.14
오~! visual studio로 개발하는 환경이 그립다..  (0) 2022.12.13
아~ 머리 아파... 자바?...  (0) 2022.12.12

 오늘 아침에 출근하여... 이클립스 클리어( eclipse.ini에  -clear 첫줄에 작성 )를 한번 더 해보고...

역시나. 안되서... workspace 모두 날려버리고, 새로 재구성... 

 

일단 소스 다 내려받고 빌드 마치고 톰캣 서버 띄웠다. 오늘은 왠지 모르게 한번에 안올라오네??

여러차례 시도해서 올라온걸 가지고...  일단 A프로젝트는 건드리지 않고. 

B 프로젝트만 가지고 해보자!!

 

B 프로젝트에 message_ko_kr.properties 에 추가해야 할 라벨코드와 문구를 등록하고 저장.

jsp파일에 수정할 위치에 메세지를 보이도록 수정!

 

역시 빌드하고 톰캣 올렸더니... 여기서부터 에러가.... 주르륵~~~~~~~! 

음... 친구 말대로... pom.xml 보고... 톰캣 배포된 위치도 확인하고.. context.xml도 보고...

근데 잘 모르겠다. 톰캣에서 읽어들이는 xml파일들이나 .class가 없는것도 아니고... 

뭐지.. 어떻게 하지?? 또 하다보니 메세지도 보이고 잘 올라왔네? 그래서 이번엔 컨트롤러를 만들고 

호출~~......... 아~~~~~ 역시나.............. 톰캣 실행되면서 에러를 뱉으며 지나간다. 뜨긴 뜨는데 

해당 컨트롤러 호출하는 메뉴가 동작을 안한다... 에러 내용도 한가지만 보이는게 아니고 뭔가 만지면 다양하게 바뀐다. 

 

 톰캣clear 하고,  A~E프로젝트를 모두 빌드를 두번씩 해봤다. 프로젝트간에 빌드 순서가 있나?

lib에 보면 A.jar가 B랑 E에만 들어있는데... 그거 말고 지금 위에 난 오류는 ... 참조랑 관련이 없고.. 

톰캣 클리어랑, 프로젝트 클린, 메이븐 클린 컴파일을 순서바꿔서도 해보고...  어쩌지...

 

 같이 있는 두분중 한분에게 sos를 보냈는데... 오셔서 상황설명하고 오류메세지를 잠깐 보셨지만... 

해결방법을 아시는건 아니니... 소스를 다시 밀어버리고 오류나는걸 보러오신다하여...

다 밀어버리고 다시 아까 같은 짓을 했다. 중간에 회의로 나가시고... 퇴근 1시간전에 오셨넹... 

 

 그 동안 하는 행동 하나 하나를 메모장에 시간대별로 적고, 톰캣 로드 순서도 보고...

정상적으로 배포된 폴더 전체를 트리 데이타로 뽑아내서 보관하고, 로드되면서 에러날때 보여지는

이름을 트리에서 검색해서 있나 없나 확인하고. 결론 : 있다!

마지막엔 처음 셋팅할때 제공받은 text문서를 다시 찬찬히 읽어 봤다. 설치할때도 한줄 한줄 내가 한

내용들을 기록하면서 봤기에... 놓친게 없나 봤더니... 빌드 할때? maven-compile 후 project clean한다고 써있네?

project clean을 안보고 지나갔었네... 그냥 maven compile하면 되는거 아닌가?

그대로 다시 해볼까?... 현재 에러나는 상태니까.... 

 

 A~E까지 모두 compile을 마치고 maven연결된 프로젝트만 clear를 해봤다. 

그리고 톰캣을 실행하니... 에러가 사라졌네? 우,.우 ;;;

시간을 보니 일단 5시가 넘어서... 이게 맞나? 2주 가까이 5시가 지나면 기가막히게 톰캣이 오류 없이 올라왔었기에...

남은 시간에 새파일 만들어서 개발을 좀 더 진행해보고, maven 컴파일 없이 프로젝트 clean하고 

 이렇게 체크하면 빌드가 같이 된다네? maven은 뭐여? 우선 적용해보니... 또 제대로 올라온다... 

계속 이렇게만 되면... 일정 쳐내는건 문제없을꺼고... 시간내서 친구 말대로 maven도 보고 tomcat도 보고, spring도 보고... 자바도 보고... 

 

 친구에게 팁이라도 얻어볼까 하고 얘기했더니...

이놈은 자꾸 pom다 뜯어보고 maven공부하고 하라는데... 와~~~~~~~~~! 찐 개발자다. 

 일단 일정을 쳐야하는 나로썬 maven을 한땀한땀 보고 있을 시간이 아닌데...

maven이 몇시간 본다고 딱 알 수 있는건가? 보안때문에 들고 갈 수도 없고... 

 

 앞에 두분은 에러도 없이 잘 하시는것 같은데... 그분들이 쓰던 소스 통째로 압축한 걸 받은건데.. 

내 자리에선 왜 이럴까? 아~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ㅅㅂ

 

 

 

 

 

 음... 자바 프로젝트를 너무 날로 먹으려 했나?? 

9년 전쯤의 자바 프로젝트는 파일을 추가해도 소스를 고쳐도 빌드가 깨지거나 톰캣 실행하면서

이상한 에러를 뱉지는 않았다. 그만큼 단순했던것 같다. 그거 믿고 이 플젝 들어왔는데... 미쳐버리겠네... 

 

 2시간 코딩 해놓은걸 빌드가 깨져서 백업하고 밀어버려야 하는 환경이 되어버려서 ... 

에러가 왜 나지?? 며칠째... 개고생중인데... 친구 말대로.. 원인해결이 안되면... 같이 계시는 분들을 괴롭혀야 될 상황이... 

 

A프로젝트, B프로젝트( ref => A.jar )

이렇게 되어 있는데...

1. A 프로젝트에 java파일에서 프로퍼티 하나 추가해서 빌드

2. 참조한 B프로젝트에 lib폴더에 jar파일을 덮어씌우고 빌드

3. 톰캣실행하면... 여기서부터 헬~!!파티~~~~~ 싹 지워버릴때까지 오류가 안사라짐... 

   될때도 있다가..... 안될때부터는 project clean, server clean도 하고 실행도해도... 될때가 있고, 안될때도 있고... 

 

너무 안일했나? 

내 관점에선 프로퍼티 하나 추가한게 문제 생길일인가? 였는데 

친구 얘기로는 그 jar가 바뀌었다는 얘기에...  

... 그런가?

 

같이 일하시는 분이 "jar를 덮어씌우면 되요." 해서 파일을 덮어씌웠는데... vs처럼 새로고침 하면 안올라온다...

:: B프로젝트에서 A프로젝트에서 수정한 java class의 프로퍼티를 치면 없는 걸로 보인다. 

 maven에서 project update 하라는 구글링 답을 보고... 업데이트 했더니... 프로퍼티는 있는 걸로 인식했지만...

톰캣 오류는 더 이상한 것 들이 생긴다. 결국 이건 답이 아니란 얘긴데... 

ide인 이클립스상에서 lib에 덮어 씌워야 하나? 이것도 해본것 같은데... 

 

 한달간 소스구성이나 흐름 따라가며 눈에 많이 익혀놨는데... 이제 요구사항 개발만 하면 금방되겠다 했더니... 

빌드 깨지면 미쵸버리겠네.........................................  코드 자체는 어렵지 않은데... 너무 피곤하다.