<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>커피중독자</title>
    <link>https://macdev.tistory.com/</link>
    <description>잠이 부족하다. 늘.</description>
    <language>ko</language>
    <pubDate>Sat, 23 May 2026 18:04:41 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>티-스토리</managingEditor>
    <image>
      <title>커피중독자</title>
      <url>https://t1.daumcdn.net/cfile/tistory/1105043C509B5E702E</url>
      <link>https://macdev.tistory.com</link>
    </image>
    <item>
      <title>[YouTube] 유튜브 플레이어 단축키 정리</title>
      <link>https://macdev.tistory.com/133</link>
      <description>&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;지금까지 찾아낸 단축키입니다. 혹시 다른 아는것 있으면 댓글로 좀 알려주세요 ㅎ&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;blockquote data-ke-style=&quot;style3&quot;&gt; 
 &lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;신규&lt;/b&gt;&lt;/p&gt; 
&lt;/blockquote&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;br&gt;w : 자막 배경 없애기,중간,진하게 전환&lt;br&gt;o : 자막 글자 선명하게 전환&lt;br&gt;t : 브라우저 내 최대크기 전환 (영화관 모드)&lt;br&gt;i : 소형플레이어 전환 (화면 우측 아래 작게 떠있는 화면)&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;blockquote data-ke-style=&quot;style3&quot;&gt; 
 &lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;이동&lt;/b&gt;&lt;/p&gt; 
&lt;/blockquote&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;br&gt;좌 : 5초 앞으로&lt;br&gt;우 : 5초 뒤로&lt;br&gt;스페이스 : 일시정지/재생&lt;br&gt;J : 10초 앞으로&lt;br&gt;K : 일시정지/재생&lt;br&gt;L : 10초 뒤로&lt;br&gt;숫자키 : 각각 0%, 10%, 20% ~~ 90% 위치로 이동.&lt;br&gt;Home 키 : 맨처음 위치로 ( 숫자키 0과 같다 )&lt;br&gt;End 키 : 제일 끝 위치로. 재생목록이 있는 경우 다음 영상으로 넘어간다&lt;br&gt;&amp;nbsp;&lt;br&gt;쉬프트 + P : 재생목록의 이전 영상 재생 (previous)&lt;br&gt;쉬프트 + N : 재생목록의 다음 영상 재생 (next)&lt;br&gt;&amp;nbsp;&lt;br&gt;정지상태에서&lt;br&gt;- 쉼표(,): 한 프레임 앞으로(왼쪽으로) 이동&lt;br&gt;- 마침표(.): 한 프레임 뒤로(오른쪽으로) 이동&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;blockquote data-ke-style=&quot;style3&quot;&gt; 
 &lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;볼륨&lt;/b&gt;&lt;/p&gt; 
&lt;/blockquote&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;br&gt;위 : 볼륨 증가&lt;br&gt;아래 : 볼륨 감소&lt;br&gt;M : 소리 줄임 (Mute)&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;blockquote data-ke-style=&quot;style3&quot;&gt; 
 &lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;영상&lt;/b&gt;&lt;/p&gt; 
&lt;/blockquote&gt;&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;br&gt;F : 전체 화면&lt;br&gt;쉬프트 + &amp;lt; : 재생속도 감소&lt;br&gt;쉬프트 + &amp;gt; : 재생속도 증가&lt;br&gt;C : 자막 ON/OFF&lt;br&gt;컨트롤 + &amp;lt; : 이전챕터 이동&lt;br&gt;컨트롤 + &amp;gt; : 다음챕터 이동&lt;br&gt;&lt;br&gt;추가: 이거 이제 다 필요 없네요. shift + / (?) 하시면 단축키 설명 팝업 뜹니다. 저도 오늘 우연히 오타(?)내서 알았음.&lt;/p&gt;</description>
      <category>How To</category>
      <category>Shortcut</category>
      <category>YouTube</category>
      <category>단축키</category>
      <category>유튜브</category>
      <author>티-스토리</author>
      <guid isPermaLink="true">https://macdev.tistory.com/133</guid>
      <comments>https://macdev.tistory.com/133#entry133comment</comments>
      <pubDate>Mon, 11 Mar 2024 13:47:29 +0900</pubDate>
    </item>
    <item>
      <title>Git Branch 목록을 보고 싶을 때. branch list 보기</title>
      <link>https://macdev.tistory.com/188</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;로컬 목록 보기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;git branch&lt;/code&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;리모트 목록 보기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;git branch -r&lt;/code&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;전체 목록 보기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;git branch -a&lt;/code&gt;&lt;/p&gt;</description>
      <category>버전관리</category>
      <author>티-스토리</author>
      <guid isPermaLink="true">https://macdev.tistory.com/188</guid>
      <comments>https://macdev.tistory.com/188#entry188comment</comments>
      <pubDate>Mon, 15 Nov 2021 14:07:03 +0900</pubDate>
    </item>
    <item>
      <title>git 로컬 파일 강제로 전체 덮어 쓰기 하는 방법.</title>
      <link>https://macdev.tistory.com/186</link>
      <description>&lt;p&gt;&lt;a href=&quot;https://stackoverflow.com/questions/1125968/how-do-i-force-git-pull-to-overwrite-local-files&quot; target=&quot;_blank&quot;&gt;참조 링크&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;배포/빌드 서버 등에 계속해서 최근 항목만을 가져오는 등의 경우에 사용 할 수 있다.&lt;/p&gt;
&lt;p&gt;로컬에 있는 모든 내용을 덮어쓰려는 경우&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;git fetch --all
git reset --hard origin/master&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;master 아닌 특정 branch 지정 사용 시&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;git reset --hard origin/&amp;lt;branch_name&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;현재 로컬 커밋을 유지(branch로 만들어 두고 덮어쓰기)&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;git checkout master
git branch &amp;lt;branch name&amp;gt;
git fetch --all
git reset --hard origin/master&lt;/code&gt;&lt;/pre&gt;</description>
      <category>버전관리</category>
      <category>Force</category>
      <category>Git</category>
      <category>Hard</category>
      <category>Pull</category>
      <category>reset</category>
      <author>티-스토리</author>
      <guid isPermaLink="true">https://macdev.tistory.com/186</guid>
      <comments>https://macdev.tistory.com/186#entry186comment</comments>
      <pubDate>Wed, 16 Oct 2019 13:48:42 +0900</pubDate>
    </item>
    <item>
      <title>MySql 설치 및 설정 (windows)</title>
      <link>https://macdev.tistory.com/185</link>
      <description>&lt;h1&gt;MySql 수동 설치 및 설정과 구동&lt;/h1&gt;
&lt;h2&gt;다운로드&lt;/h2&gt;
&lt;p&gt;&lt;a href=&quot;https://dev.mysql.com/downloads/mysql/5.7.html&quot;&gt;MySql 5.7 Download page&lt;/a&gt;&lt;br&gt;windows 64bit zip 버전 다운로드&lt;/p&gt;
&lt;h2&gt;설치&lt;/h2&gt;
&lt;p&gt;귀찮은 문제들이 생길 수 있으므로 상위 폴더에 띄어쓰기, 한글 등이 들어 있지 않도록 주의 하여 압축을 해제한다.&lt;br&gt;환경변수에 MYSQL_HOME 등록. Path 에 MYSQL_HOME\bin 등록. (bin폴더 가서 작업하면 굳이 안해도..)&lt;/p&gt;
&lt;h2&gt;설정파일 생성&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;루트에 data 폴더 생성.&lt;/li&gt;
&lt;li&gt;설치한 폴더 루트에 my.ini 파일 생성 (linux 에선 my.cnf)&lt;/li&gt;
&lt;/ol&gt;
&lt;pre&gt;&lt;code class=&quot;language-ini&quot;&gt;[mysqld]  
basedir=d:/projects/mysql5  
datadir=d:/projects/mysql5/data  
port=3306

[client]  
default-character-set = utf8

[mysqld]  
character-set-client-handshake=FALSE  
init_connect=&amp;quot;SET collation_connection = utf8_general_ci&amp;quot;  
init_connect=&amp;quot;SET NAMES utf8&amp;quot;  
character-set-server = utf8  
collation-server = utf8_general_ci

[mysqldump]  
default-character-set = utf8

[mysql]  
default-character-set = utf8&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;초기화&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;mysqld --initialize-insecure&lt;/code&gt; (root 비밀번호 없음)&lt;br&gt;mysqld --initialize (비밀번호 만들어냄)&lt;/p&gt;
&lt;h2&gt;실행&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;mysqld --console&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;mysql -u root 로 접속해본다.&lt;br&gt;실행 잘 되는지 확인 해 보고 Ctrl + C 로 중지&lt;/p&gt;
&lt;h2&gt;윈도우즈 서비스 등록&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;mysqld --install&lt;/code&gt;&lt;/p&gt;
&lt;h2&gt;서비스 제거&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;mysqld --remove&lt;/code&gt;&lt;/p&gt;
&lt;h2&gt;sql 백업 파일 import&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;mysql -h hostname -u username -p databasename &amp;lt; db_backup.sql&lt;/code&gt;&lt;/p&gt;
&lt;h2&gt;foreign key 오류.( ERROR 1215 (HY000) at line 3041: Cannot add foreign key constraint )&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;cat &amp;lt;(echo &amp;quot;SET FOREIGN_KEY_CHECKS=0;&amp;quot;) imports.sql | mysql&lt;/code&gt;&lt;/p&gt;
&lt;h2&gt;date null 관련 오류.&lt;/h2&gt;
&lt;p&gt;select @@sql_mode; (또는 select @@global.sql_mode;) 실행하여 나오는 설정을&lt;br&gt;my.ini ( my.cnf ) 설정의 [mysqld] 아래의&lt;br&gt;sql_mode=&amp;#39;...,...,..&amp;#39; 에 복사하여 집어 넣는다. 이때 NO_ZERO_DATE 관련한 설정을 제거한다.&lt;br&gt;sql_mode 는 대소문을 구분한다.(대문자일때 서비스가 올라가지 않았다)&lt;/p&gt;
&lt;h2&gt;패스워드 변경 정책&lt;/h2&gt;
&lt;p&gt;쉬운 단어로 변경이 안될 때&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;정책확인&lt;br&gt;&lt;code&gt;SHOW VARIABLES LIKE &amp;#39;validate_password%&amp;#39;;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;정책을 낮게 변경&lt;br&gt;&lt;code&gt;SET GLOBAL validate_password_policy=LOW;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;테이블명 대소문자 구분(윈도우는 괜챃으나, 리눅스에서 간혹..)&lt;/h2&gt;
&lt;p&gt;#Error Code: 1146. Table &amp;#39;dbname.table_name&amp;#39; doesn&amp;#39;t exist&lt;br&gt;-확인&lt;br&gt;show variables like &amp;#39;lower_case_table_names&amp;#39;;   (0: 대소문자 구분함)&lt;br&gt;-수정&lt;br&gt;/etc/my.cnf 의 [mysqld] 영역에 lower_case_table_names=1 (1: 대소문자 구분안함) 을 추가한다.&lt;br&gt;(재시작필요 systemctl restart mysqld)&lt;/p&gt;
&lt;h2&gt;TABLE 상세확인&lt;/h2&gt;
&lt;p&gt;show table status;&lt;/p&gt;
&lt;h2&gt;DB FILE 저장위치 확인&lt;/h2&gt;
&lt;p&gt;SHOW VARIABLES WHERE Variable_Name LIKE &amp;#39;%dir&amp;#39;;&lt;br&gt;또는&lt;br&gt;select @@datadir;&lt;/p&gt;
&lt;h2&gt;DATABASE 삭제가 안될때&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;저장위치 폴더 직접제거&lt;/li&gt;
&lt;li&gt;같은 DB 명 CREATE&lt;/li&gt;
&lt;li&gt;같은 DB 명 DROP&lt;/li&gt;
&lt;/ol&gt;</description>
      <category>DB</category>
      <author>티-스토리</author>
      <guid isPermaLink="true">https://macdev.tistory.com/185</guid>
      <comments>https://macdev.tistory.com/185#entry185comment</comments>
      <pubDate>Tue, 15 Oct 2019 15:33:50 +0900</pubDate>
    </item>
    <item>
      <title>[eclipse] Server Location 비활성화 되어 있을때.</title>
      <link>https://macdev.tistory.com/179</link>
      <description>&lt;p&gt;Server Location 이 잠겨서 수정이 되지 않는 경우.&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 498px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99F8D8505C63BB8D28&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99F8D8505C63BB8D28&quot; width=&quot;498&quot; height=&quot;213&quot; filename=&quot;001.PNG&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;1. 서버 View 에서 해당 서버를 선택하고 오른쪽 클릭하여 속성 정보를 연다.&lt;/p&gt;&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 380px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/991246505C63BB8D34&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F991246505C63BB8D34&quot; width=&quot;380&quot; height=&quot;82&quot; filename=&quot;002.PNG&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;2. Switch Location 을 클릭하여 정보를 변경한다.&lt;/p&gt;&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 423px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99E403505C63BB8D02&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99E403505C63BB8D02&quot; width=&quot;423&quot; height=&quot;108&quot; filename=&quot;003.PNG&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 428px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99D170505C63BB8E03&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99D170505C63BB8E03&quot; width=&quot;428&quot; height=&quot;110&quot; filename=&quot;004.PNG&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;3. Server Locations 가 활성화 되었다.&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 502px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99FEE9505C63BB8E01&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99FEE9505C63BB8E01&quot; width=&quot;502&quot; height=&quot;218&quot; filename=&quot;005.PNG&quot; filemime=&quot;image/jpeg&quot; style=&quot;&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Software</category>
      <category>Eclipse</category>
      <category>tomcat</category>
      <category>이클립스</category>
      <category>톰캣</category>
      <author>티-스토리</author>
      <guid isPermaLink="true">https://macdev.tistory.com/179</guid>
      <comments>https://macdev.tistory.com/179#entry179comment</comments>
      <pubDate>Wed, 13 Feb 2019 15:41:40 +0900</pubDate>
    </item>
    <item>
      <title>[Sublime Text 3] gradle build 사용. (gradlew.sublime-build)</title>
      <link>https://macdev.tistory.com/177</link>
      <description>&lt;p&gt;메뉴바에서 Tools &amp;gt; Build System &amp;gt; New Build System 을 선택하면 창이 새로 열린다.&lt;/p&gt;&lt;pre class=&quot;brush: js&quot;&gt;{
	&quot;cmd&quot;: [&quot;gradlew.bat&quot;]
	,&quot;working_dir&quot;: &quot;$file_path&quot;
}
&lt;/pre&gt;
&lt;p&gt;파일 작성을 완료하고 저장을 선택하면&lt;/p&gt;&lt;p&gt;[SublimeText 설치폴더]\Data\Packages\User 폴더가 기본위치로 열린다.&lt;/p&gt;&lt;p&gt;파일앞의 untitled 부분을 원하는 이름(예: gradle.sublime-build)으로 수정하고 저장한다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Tools &amp;gt; Build System 의 목록에 저장한 파일명으로 빌드가 추가 된다. 해당 빌드를 선택한다.&lt;/p&gt;&lt;p&gt;프로젝트의 gradlew.bat, build.gradle 이 있는 위치에서 Build (Ctrl + B) 를 실행한다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;- ${file_path} 는 현재 파일을 실행하는 폴더를 지정한다. (없어도 돌아감..)&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;- 윈도우즈에서 build 결과 창의 한글이 깨져 나온다.&amp;nbsp;&quot;encoding&quot;: &quot;cp949&quot; 을 추가하면&amp;nbsp;한글이 정상적으로 보인다.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;- task 를 수행하려 한다면 gradle.sublime-build 를 열어서 &quot;cmd&quot; : [&quot;gradlew.bat&quot;, &quot;TASK 이름&quot;] 을 적어주면 된다.(귀찮..)&lt;/p&gt;</description>
      <category>Build</category>
      <category>Gradle</category>
      <category>SUBLIME</category>
      <author>티-스토리</author>
      <guid isPermaLink="true">https://macdev.tistory.com/177</guid>
      <comments>https://macdev.tistory.com/177#entry177comment</comments>
      <pubDate>Fri, 25 Jan 2019 10:11:00 +0900</pubDate>
    </item>
    <item>
      <title>Maven 으로 실행가능한 jar 를 만들기 4</title>
      <link>https://macdev.tistory.com/175</link>
      <description>&lt;p&gt;설정 변경이 필요할 때마다 jar 를 변경하지 않도록 설정 파일등은 외부로 빼도록 해보자.&lt;/p&gt;
&lt;p&gt;여기서는 log4j2.xml 설정을 외부로 옮기고 log도 파일로 기록되도록 설정한다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;resource 폴더의 log4j2.xml 설정파일을 수정&lt;/p&gt;
&lt;pre class=&quot;brush: xml;&quot;&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt;
&amp;lt;Configuration status=&quot;INFO&quot;&amp;gt;
	&amp;lt;Appenders&amp;gt;
		&amp;lt;Console name=&quot;Console&quot; target=&quot;SYSTEM_OUT&quot;&amp;gt;
			&amp;lt;PatternLayout pattern=&quot;%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n&quot; /&amp;gt;
		&amp;lt;/Console&amp;gt;
		&amp;lt;File name=&quot;MyFile&quot; filename=&quot;logs/app.log&quot;&amp;gt;
			&amp;lt;PatternLayout&amp;gt;
				&amp;lt;Pattern&amp;gt;%d %p %c{1.} [%t] %m%n&amp;lt;/Pattern&amp;gt;
			&amp;lt;/PatternLayout&amp;gt;
		&amp;lt;/File&amp;gt;
	&amp;lt;/Appenders&amp;gt;
	&amp;lt;Loggers&amp;gt;
		&amp;lt;Root level=&quot;DEBUG&quot;&amp;gt;
			&amp;lt;!-- &amp;lt;appenderref ref=&quot;MyFile&quot; /&amp;gt; --&amp;gt;
			&amp;lt;AppenderRef ref=&quot;Console&quot; /&amp;gt;
		&amp;lt;/Root&amp;gt;
	&amp;lt;/Loggers&amp;gt;
&amp;lt;/Configuration&amp;gt;
&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;pom.xml 의 plugin 설정 변경, jar플러그인에 열외 항목을 추가하고, resource 관리를 통해 외부 폴더로 파일을 옮겨준다.&lt;/p&gt;
&lt;pre class=&quot;brush: xml;&quot;&gt;&amp;lt;plugins&amp;gt;
	&amp;lt;plugin&amp;gt;
		&amp;lt;groupId&amp;gt;org.apache.maven.plugins&amp;lt;/groupId&amp;gt;
		&amp;lt;artifactId&amp;gt;maven-jar-plugin&amp;lt;/artifactId&amp;gt;
		&amp;lt;configuration&amp;gt;
			&amp;lt;excludes&amp;gt;
				&amp;lt;exclude&amp;gt;**/log4j2.xml&amp;lt;/exclude&amp;gt;
			&amp;lt;/excludes&amp;gt;
			&amp;lt;archive&amp;gt;
				&amp;lt;manifest&amp;gt;
					&amp;lt;mainClass&amp;gt;printTime.GetTime&amp;lt;/mainClass&amp;gt;
					&amp;lt;addClasspath&amp;gt;true&amp;lt;/addClasspath&amp;gt;
					&amp;lt;classpathPrefix&amp;gt;libs/&amp;lt;/classpathPrefix&amp;gt;
				&amp;lt;/manifest&amp;gt;
			&amp;lt;/archive&amp;gt;
		&amp;lt;/configuration&amp;gt;
	&amp;lt;/plugin&amp;gt;
&amp;lt;/plugins&amp;gt;

&amp;lt;resources&amp;gt;
	&amp;lt;resource&amp;gt;
		&amp;lt;directory&amp;gt;src/main/resources&amp;lt;/directory&amp;gt;
		&amp;lt;targetPath&amp;gt;../conf&amp;lt;/targetPath&amp;gt;
	&amp;lt;/resource&amp;gt;
&amp;lt;/resources&amp;gt;
&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;jar를 실행해 보자. conf 파일을 외부로 뺐으므로 옵션을 선언해준다.&lt;/p&gt;&lt;div class=&quot;txc-textbox&quot; style=&quot;border-style: solid; border-width: 1px; border-color: rgb(231, 253, 181); background-color: rgb(231, 253, 181); padding: 10px;&quot;&gt;&lt;p&gt;java -Dlog4j.configurationFile=conf\log4j2.xml -jar printTime.jar&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;폴더구조는 아래와 같다.&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 187px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99BB6C4A5C36CB8808&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99BB6C4A5C36CB8808&quot; width=&quot;187&quot; height=&quot;71&quot; filename=&quot;maven6.PNG&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;libs 폴더를 외부에 두지 않고 모든 라이브러리를 내부에 포함하고자 한다면 몇가지 플러그인을 사용하여 처리할 수 있다. shade 플러그인을 적용해 본다.&lt;/p&gt;
&lt;pre class=&quot;brush: xml;&quot;&gt;&amp;lt;plugin&amp;gt;
	&amp;lt;groupId&amp;gt;org.apache.maven.plugins&amp;lt;/groupId&amp;gt;
	&amp;lt;artifactId&amp;gt;maven-shade-plugin&amp;lt;/artifactId&amp;gt;
	&amp;lt;executions&amp;gt;
		&amp;lt;execution&amp;gt;
			&amp;lt;goals&amp;gt;
				&amp;lt;goal&amp;gt;shade&amp;lt;/goal&amp;gt;
			&amp;lt;/goals&amp;gt;
			&amp;lt;configuration&amp;gt;
				&amp;lt;shadedartifactAttached&amp;gt;true&amp;lt;/shadedartifactAttached&amp;gt;
				&amp;lt;transformers&amp;gt;
					&amp;lt;transformer implementation=&quot;org.apache.maven.plugins.shade.resource.ManifestResourceTransformer&quot;&amp;gt;
						&amp;lt;manifestEntries&amp;gt;
							&amp;lt;Main-Class&amp;gt;printTime.GetTime&amp;lt;/Main-Class&amp;gt;
							&amp;lt;Class-Path&amp;gt;.&amp;lt;/Class-Path&amp;gt;
							&amp;lt;Build-Number&amp;gt;1&amp;lt;/Build-Number&amp;gt;
						&amp;lt;/manifestEntries&amp;gt;
					&amp;lt;/transformer&amp;gt;
				&amp;lt;/transformers&amp;gt;
			&amp;lt;/configuration&amp;gt;
		&amp;lt;/execution&amp;gt;
	&amp;lt;/executions&amp;gt;
&amp;lt;/plugin&amp;gt;
&lt;/pre&gt;
&lt;div class=&quot;txc-textbox&quot; style=&quot;border-style: solid; border-width: 1px; border-color: rgb(231, 253, 181); background-color: rgb(231, 253, 181); padding: 10px;&quot;&gt;&lt;p&gt;maven build &amp;gt; goals = &quot;package shade:shade&quot;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;폴더구조는 아래와 같다.&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 267px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/9948484E5C36CD4937&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F9948484E5C36CD4937&quot; width=&quot;267&quot; height=&quot;56&quot; filename=&quot;maven7.PNG&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;libs 폴더는 jar 내부에 포함된다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Gradle</category>
      <category>Build</category>
      <category>jar</category>
      <category>java</category>
      <category>maven</category>
      <author>티-스토리</author>
      <guid isPermaLink="true">https://macdev.tistory.com/175</guid>
      <comments>https://macdev.tistory.com/175#entry175comment</comments>
      <pubDate>Thu, 10 Jan 2019 10:39:33 +0900</pubDate>
    </item>
    <item>
      <title>Maven 으로 실행가능한 jar 를 만들기 3</title>
      <link>https://macdev.tistory.com/174</link>
      <description>&lt;p&gt;구동에 필요한 의존성 라이브러리를 모두 (외부폴더로)포함해서 jar 를 생성하도록 해본다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;pom.xml 에서 jar 플러그인을 수정하고&amp;nbsp;dependency 플러그인을 추가하고 설정한다.&lt;/p&gt;
&lt;pre class=&quot;brush: xml;&quot;&gt;&amp;lt;plugin&amp;gt;
	&amp;lt;groupId&amp;gt;org.apache.maven.plugins&amp;lt;/groupId&amp;gt;
	&amp;lt;artifactId&amp;gt;maven-jar-plugin&amp;lt;/artifactId&amp;gt;
	&amp;lt;configuration&amp;gt;
		&amp;lt;archive&amp;gt;
			&amp;lt;manifest&amp;gt;
				&amp;lt;mainClass&amp;gt;printTime.GetTime&amp;lt;/mainClass&amp;gt;
				&amp;lt;addClasspath&amp;gt;true&amp;lt;/addClasspath&amp;gt;
				&amp;lt;classpathPrefix&amp;gt;libs/&amp;lt;/classpathPrefix&amp;gt;
			&amp;lt;/manifest&amp;gt;
		&amp;lt;/archive&amp;gt;
	&amp;lt;/configuration&amp;gt;
&amp;lt;/plugin&amp;gt;

&amp;lt;plugin&amp;gt;
	&amp;lt;groupId&amp;gt;org.apache.maven.plugins&amp;lt;/groupId&amp;gt;
	&amp;lt;artifactId&amp;gt;maven-dependency-plugin&amp;lt;/artifactId&amp;gt;
	&amp;lt;version&amp;gt;2.5.1&amp;lt;/version&amp;gt;
	&amp;lt;executions&amp;gt;
		&amp;lt;execution&amp;gt;
			&amp;lt;id&amp;gt;copy-dependencies&amp;lt;/id&amp;gt;
			&amp;lt;phase&amp;gt;package&amp;lt;/phase&amp;gt;
			&amp;lt;goals&amp;gt;
				&amp;lt;goal&amp;gt;copy-dependencies&amp;lt;/goal&amp;gt;
			&amp;lt;/goals&amp;gt;
			&amp;lt;configuration&amp;gt;
				&amp;lt;includeScope&amp;gt;runtime&amp;lt;/includeScope&amp;gt;
				&amp;lt;outputDirectory&amp;gt;${project.build.directory}/libs/&amp;lt;/outputDirectory&amp;gt;
			&amp;lt;/configuration&amp;gt;
		&amp;lt;/execution&amp;gt;
	&amp;lt;/executions&amp;gt;
&amp;lt;/plugin&amp;gt;
&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;libs 폴더를 추가하고 해당 폴더에 라이브러리들을 넣어 주도록 설정하였다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;jar 플러그인은 클래스패스 선언을 관리하여 MANIFEST.MF 에 넣어줄것이고, dependency 플러그인은 폴더를 생성하고 라이브러리들을 복사하여 줄것이다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Maven build goals =&amp;nbsp;package 를 진행해 보자.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;생성된 jar 의 MANIFEST.MF 를 살펴보면 아래와 같다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Manifest-Version: 1.0&lt;/p&gt;
&lt;p&gt;Archiver-Version: Plexus Archiver&lt;/p&gt;
&lt;p&gt;Built-By: macdev&lt;/p&gt;
&lt;p&gt;Class-Path: libs/log4j-api-2.11.1.jar libs/log4j-core-2.11.1.jar&lt;/p&gt;
&lt;p&gt;Created-By: Apache Maven 3.3.9&lt;/p&gt;
&lt;p&gt;Build-Jdk: 1.8.0_77&lt;/p&gt;
&lt;p&gt;Main-Class: printTime.GetTime&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Class-Path 가 추가된것을 확인할 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;jar가 생성된 폴더에 libs 폴더도 생성되었고 libs 폴더 내부에 로그 라이브러리들도 들어 있다.&lt;/p&gt;
&lt;p&gt;별도의 classpath 를 불러 올 필요가 없어졌다. 실행해 보도록 하자.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class=&quot;txc-textbox&quot; style=&quot;border-style: solid; border-width: 1px; border-color: rgb(231, 253, 181); background-color: rgb(231, 253, 181); padding: 10px;&quot;&gt;&lt;p&gt;java -jar&amp;nbsp;printTime-1.0.0.jar&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Gradle</category>
      <category>Build</category>
      <category>jar</category>
      <category>java</category>
      <category>maven</category>
      <author>티-스토리</author>
      <guid isPermaLink="true">https://macdev.tistory.com/174</guid>
      <comments>https://macdev.tistory.com/174#entry174comment</comments>
      <pubDate>Thu, 10 Jan 2019 10:04:32 +0900</pubDate>
    </item>
    <item>
      <title>Maven 으로 실행가능한 jar 를 만들기 2</title>
      <link>https://macdev.tistory.com/173</link>
      <description>&lt;p&gt;프로그램 실행시&amp;nbsp;작업을 수행하고 로그를 남길수 있도록 해본다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;컴파일러를 명확하게 지정하고 로그를 기록하기 위한 플러그인을 추가해 보도록 한다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;pom.xml 수정&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;1.&amp;nbsp;버전관리를 한곳에 모아 보기 좋도록 버전값을 속성화 한다. (root 아래)&lt;/p&gt;

&lt;pre class=&quot;brush: xml;&quot;&gt;
&amp;lt;properties&gt;
	&amp;lt;jdk.version&gt;1.8&amp;lt;/jdk.version&gt;
	&amp;lt;log4j2.version&gt;2.11.1&amp;lt;/log4j2.version&gt;
&amp;lt;/properties&gt;
&lt;/pre&gt;

&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;2. logging 라이브러리 의존성&amp;nbsp;추가&amp;nbsp;(root 아래)&lt;/p&gt;
&lt;pre class=&quot;brush: xml;&quot;&gt;
&amp;lt;dependencies&gt;
	&amp;lt;dependency&gt;
		&amp;lt;groupId&gt;org.apache.logging.log4j&amp;lt;/groupId&gt;
		&amp;lt;artifactId&gt;log4j-api&amp;lt;/artifactId&gt;
		&amp;lt;version&gt;${log4j2.version}&amp;lt;/version&gt;
	&amp;lt;/dependency&gt;

	&amp;lt;dependency&gt;
		&amp;lt;groupId&gt;org.apache.logging.log4j&amp;lt;/groupId&gt;
		&amp;lt;artifactId&gt;log4j-core&amp;lt;/artifactId&gt;
		&amp;lt;version&gt;${log4j2.version}&amp;lt;/version&gt;
	&amp;lt;/dependency&gt;
&amp;lt;/dependencies&gt;

&lt;/pre&gt;

&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;3. compile 플러그인 추가. (build &amp;gt; plugins 에 삽입)&lt;/p&gt;
&lt;pre class=&quot;brush: xml;&quot;&gt;
&amp;lt;plugin&gt;
	&amp;lt;groupId&gt;org.apache.maven.plugins&amp;lt;/groupId&gt;
	&amp;lt;artifactId&gt;maven-compiler-plugin&amp;lt;/artifactId&gt;
	&amp;lt;version&gt;3.5.1&amp;lt;/version&gt;
	&amp;lt;configuration&gt;
		&amp;lt;source&gt;${jdk.version}
		&amp;lt;target&gt;${jdk.version}&amp;lt;/target&gt;
	&amp;lt;/configuration&gt;
&amp;lt;/plugin&gt;
&lt;/pre&gt;

&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;4. Maven build 실행 하면 jar 생성&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;jar 실행하여 확인.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;java -classpath &quot;printTime-1.0.0.jar;[경로]\log4j-api-2.11.1.jar;[경로]\log4j-core-2.11.1.jar&quot; printTime.GetTime&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;현상태에서의 MANIFEST.MF 의 내용은 아래와 같다.&lt;/p&gt;
&lt;p&gt;Manifest-Version: 1.0&lt;/p&gt;
&lt;p&gt;Archiver-Version: Plexus Archiver&lt;/p&gt;
&lt;p&gt;Built-By: macdev&lt;/p&gt;
&lt;p&gt;Created-By: Apache Maven 3.3.9&lt;/p&gt;
&lt;p&gt;Build-Jdk: 1.8.0_77&lt;/p&gt;
&lt;p&gt;Main-Class: printTime.GetTime&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;폴더구조는 아래와 같다.&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 163px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99A099415C36962E2C&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99A099415C36962E2C&quot; width=&quot;163&quot; height=&quot;125&quot; filename=&quot;maven5.PNG&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Gradle</category>
      <category>Build</category>
      <category>jar</category>
      <category>java</category>
      <category>maven</category>
      <category>실행</category>
      <author>티-스토리</author>
      <guid isPermaLink="true">https://macdev.tistory.com/173</guid>
      <comments>https://macdev.tistory.com/173#entry173comment</comments>
      <pubDate>Thu, 10 Jan 2019 09:50:19 +0900</pubDate>
    </item>
    <item>
      <title>Maven 으로 실행가능한 jar 를 만들기 1</title>
      <link>https://macdev.tistory.com/172</link>
      <description>&lt;p&gt;이클립스에서 new &amp;gt; maven project&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;create simple project 체크 하고 next&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;내용 입력하고 finish&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 602px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99D8EA405C35AA9236&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99D8EA405C35AA9236&quot; width=&quot;602&quot; height=&quot;541&quot; filename=&quot;maven1.PNG&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;프로젝트 기본 구조는 아래처럼 생성된다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 214px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/994EA8385C35AB7B2F&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F994EA8385C35AB7B2F&quot; width=&quot;214&quot; height=&quot;166&quot; filename=&quot;maven2.PNG&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;pom.xml 을 열어보면 앞서 입력한 기본정보만 등록되어 있다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;pre class=&quot;brush: xml;&quot;&gt;&amp;lt;project xmlns=&quot;http://maven.apache.org/POM/4.0.0&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
	xsi:schemaLocation=&quot;http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd&quot;&amp;gt;
	&amp;lt;modelVersion&amp;gt;4.0.0&amp;lt;/modelVersion&amp;gt;
	&amp;lt;groupId&amp;gt;org.macdev.study&amp;lt;/groupId&amp;gt;
	&amp;lt;artifactId&amp;gt;printTime&amp;lt;/artifactId&amp;gt;
	&amp;lt;version&amp;gt;1.0.0&amp;lt;/version&amp;gt;
	&amp;lt;name&amp;gt;macdev&amp;lt;/name&amp;gt;
	&amp;lt;description&amp;gt;시간출력&amp;lt;/description&amp;gt;
&amp;lt;/project&amp;gt;
&lt;/pre&gt;

&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;src/main/java 에 new &amp;gt; class 로 자바파일을 생성한다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 529px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/99C755355C35B0CD37&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F99C755355C35B0CD37&quot; width=&quot;529&quot; height=&quot;631&quot; filename=&quot;maven3.PNG&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;pre class=&quot;brush: java;&quot;&gt;package printTime;

import java.util.Calendar;

public class GetTime {
	public static void main(String[] args) {
		System.out.println(Calendar.getInstance().getTime());
	}
}
&lt;/pre&gt;

&lt;div class=&quot;txc-textbox&quot; style=&quot;border-style: solid; border-width: 1px; border-color: rgb(238, 238, 238); background-color: rgb(238, 238, 238); padding: 10px;&quot;&gt;&lt;p&gt;Wed Jan 09 17:20:04 KST 2019&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;jar&amp;nbsp;생성을&amp;nbsp;위해 pom.xml 에 maven plugin 을 추가한다. (maven-jar-plugin)&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre class=&quot;brush: xml;&quot;&gt;&amp;lt;project xmlns=&quot;http://maven.apache.org/POM/4.0.0&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemalocation=&quot;http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd&quot;&amp;gt;
	&amp;lt;modelversion&amp;gt;4.0.0&amp;lt;/modelversion&amp;gt;
	&amp;lt;groupid&amp;gt;org.macdev.study&amp;lt;/groupid&amp;gt;
	&amp;lt;artifactid&amp;gt;printTime&amp;lt;/artifactid&amp;gt;
	&amp;lt;version&amp;gt;1.0.0&amp;lt;/version&amp;gt;
	&amp;lt;name&amp;gt;macdev&amp;lt;/name&amp;gt;
	&amp;lt;description&amp;gt;시간출력&amp;lt;/description&amp;gt;
	
	&amp;lt;build&amp;gt;
		&amp;lt;plugins&amp;gt;
			&amp;lt;plugin&amp;gt;
				&amp;lt;groupId&amp;gt;org.apache.maven.plugins&amp;lt;/groupId&amp;gt;
				&amp;lt;artifactId&amp;gt;maven-jar-plugin&amp;lt;/artifactId&amp;gt;
				&amp;lt;configuration&amp;gt;
					&amp;lt;archive&amp;gt;
						&amp;lt;manifest&amp;gt;
							&amp;lt;mainClass&amp;gt;printTime.GetTime&amp;lt;/mainClass&amp;gt;
						&amp;lt;/manifest&amp;gt;
					&amp;lt;/archive&amp;gt;
				&amp;lt;/configuration&amp;gt;
			&amp;lt;/plugin&amp;gt;
		&amp;lt;/plugins&amp;gt;
	&amp;lt;/build&amp;gt;
&amp;lt;/project&amp;gt;
&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;메뉴에서 Run &amp;gt; Run As &amp;gt; Maven build 선택 후 대화상자의 Goals 에 &quot;package&quot; 라고 입력하고 Run 실행.&lt;/p&gt;
&lt;p&gt;콘솔에 오류가 없이 정상적으로 진행이 되었다면 아래와 같이 target 에 jar 파일이 생성된다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: left; clear: none; float: none;&quot;&gt;&lt;span class=&quot;imageblock&quot; style=&quot;display: inline-block; width: 245px;  height: auto; max-width: 100%;&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/cfile/tistory/992C2D355C35B0CD28&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F992C2D355C35B0CD28&quot; width=&quot;245&quot; height=&quot;256&quot; filename=&quot;maven4.PNG&quot; filemime=&quot;image/jpeg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;해당위치에서 커맨드를 입력하여 실행하여 본다.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class=&quot;txc-textbox&quot; style=&quot;border-style: solid; border-width: 1px; border-color: rgb(219, 232, 251); background-color: rgb(219, 232, 251); padding: 10px;&quot;&gt;&lt;p&gt;java -jar printTime-1.0.0.jar&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>Gradle</category>
      <category>jar</category>
      <category>java</category>
      <category>maven</category>
      <author>티-스토리</author>
      <guid isPermaLink="true">https://macdev.tistory.com/172</guid>
      <comments>https://macdev.tistory.com/172#entry172comment</comments>
      <pubDate>Wed, 9 Jan 2019 17:47:25 +0900</pubDate>
    </item>
  </channel>
</rss>