Software Requirements Specification Template
|
|
- 다인 학
- 5 years ago
- Views:
Transcription
1 Maven Chapter3 Page 1 Table of Contents Table of Contents... 1 Revision History 내가꿈꾸는개발환경 메이븐설치및템플릿프로젝트생성 메이븐설정파일 settings.xml 설정파일 pom.xml 설정파일 최상위 POM 설정파일 위키북프로젝트기본디렉토리설정완료 메이븐라이프사이클 lifecycle 메이븐을이용한의존라이브러리관리 메이븐과이클립스통합 메이븐과데이터베이스통합 메이븐프로파일, 배포 리포팅기능을활용한문서관리 메이븐모듈 module 메이븐사내저장소설치및활용 표준 POM 파일생성및리팩토링 메이븐아키타입 archetype 새로운프로젝트를시작하면서
2 Maven Chapter3 Page 2 Revision History Name Date Reason For Changes Version
3 Maven Chapter3 Page 3 1. 내가꿈꾸는개발환경 2. 메이븐설치및템플릿프로젝트생성 3. 메이븐설정파일 프로젝트시작 2 일째 ( 소제목 ) 메이븐은설정보다는관례 Convention over Configuration 패러다임에따라프로젝트의기본디렉토리가이미정의되어있다. 그렇다면이기본디렉토리에대한정보는어디에서관리하고있을까? 이미예약되어있는기본디렉토리구조는변경할수없을까? 지금까지메이븐으로빌드하지않던프로젝트까지메이븐으로빌드가가능하도록하기위해서는분명히변경이가능하도록구현되어있을것이다. 오늘은메이븐기본설정파일에대하여분석해봐야겠다. 메이븐기본설정파일을분석한다음위키북프로젝트를위한기반작업을완료해야겠다. 어제생성했던웹프로젝트는내가예상했던디렉토리구조가아니라보완하는작업이필요한상태이다. 위키북프로젝트가완성되면프로젝트를빌드해보고빌드한결과물이어떤구조로생성되는지까지확인해야겠다. 오늘은정말야근하지않기위하여최대한근무시간중에집중력을발휘해야겠다. 삽질만하지않는다면퇴근전까지완료할수있겠지만프로젝트초반설정작업을할때워낙삽질을해야하는상황이많이발생하는지라장담하기힘들다. 메이븐을사용하려면알아야할설정파일이두가지가있다. 첫째는메이븐빌드툴과관련한설정파일이며, 설정파일이름은 settings.xml 이다. 둘째는메이븐기반프로젝트에서사용하는설정파일이며, 설정파일의이름은기본으로 pom.xml 을사용한다. 개발자가원할경우 pom.xml 이아니라다른이름을사용할수있다.
4 Maven Chapter3 Page settings.xml 설정파일 메이븐빌드툴과관련한 settings.xml 파일은 MAVEN_HOME/conf 디렉토리에서위치한다. MAVEN_HOME/conf 디렉토리에위치하는 settings.xml 은메이븐을설치하면기본으로제공한다. MAVEN_HOME/conf 디렉토리의 settings.xml 설정파일은메이븐을설치한컴퓨터의모든사용자에동일한설정을하기위한용도로사용된다. 이 settings.xml 설정파일을열어보면기본엘리먼트를제외한대부분의설정엘리먼트가주석처리되어있다. 따라서추가적인설정이필요할경우주석처리되어있는부분을참고하여설정하는것이가능하다. 만약각사용자별로다른설정을하고자한다면 USER_HOME/.m2( 예를들어윈도우즈 XP 는 C:\Documents and Settings\javajigi\.m2) 디렉토리에 settings.xml 설정파일을추가하여설정하는것이가능하다. 각사용자별설정파일은각사용자별로직접생성해야한다. 매번직접생성하는것이번거롭다면 MAVEN_HOME/conf/settings.xml 파일을복사해설정하는것도좋은방법이다. 메이븐은빌드할때의존관계에있는라이브러리, 플러그인을중앙저장소에서개발자 PC 로다운로드한다. 이와같이다운로드한라이브러리는개발자 PC 의특정디렉토리에위치하게되는데이디렉토리를로컬저장소라부른다. 로컬저장소의기본설정은 USER_HOME/.m2/repository 이다. 그런데기본경로를사용하지않고로컬저장소의경로를바꾸고싶다면다음과같은방법으로변경할수있다. MAVEN_HOME/conf 디렉토리의 settings.xml 파일을열어보면 <settings/> 루트엘리먼트하위의 <localrepository/> 엘리먼트가주석처리된것을확인할수있다. <localrepository/> 엘리먼트의주석을 제거한다음자신이원하는로컬저장소의경로를지정해주면된다. <settings> <localrepository>d:/repositories/mavenrepository</localrepository> [...] </settings> 예제 3-1 settings.xml 파일에서로컬저장소의경로를변경하는예제소스 이절에서는 settings.xml 설정파일의각엘리먼트에대하여별도의설명은하지않고, 위키북프로젝트를 진행하면서 settings.xml 파일을변경해설정을해야하는상황이발생하는시점에추가적인설명을 진행하도록하겠다.
5 Maven Chapter3 Page pom.xml 설정파일 메이븐은빌드와관련된정보를프로젝트객체모델 Project Object Model ( 이하 POM) 1 이라는이름으로정의하고있다. POM 의이름을따서기본설정파일은 pom.xml 파일이다. 메이븐은 mvn 명령을실행하면기본적으로 pom.xml 파일을읽어빌드를실행한다. 만약 pom.xml 파일이아닌다른설정파일을사용하고자한다면 -f 또는 --file 옵션을사용하면된다. mvn -f mypom.xml test 메이븐 POM 은크게 4 개의카테고리로구분할수있다. 그림 3-1 메이븐 POM 설정파일의기본구성요소 메이븐빌드설정파일의주요구성요소는그림 3-1 에서보는바와같이기본적인프로젝트정보, 빌드 설정, POM 관계설정, 빌드환경 4 개의카테고리로나뉜다. 1 프로젝트객체모델 (Project Object Model) 은프로젝트에기본적으로필요한정보를관리할수있도록정의한모델이다. 메이븐은이와같이정의한프로젝트기본구조를기반으로빌드를하며, 빌드를진행할때필요한설정정보를포함하고있다. POM 은메이븐 1.X 에서는 project.xml 에서메이븐 2.x 에서 pom.xml 로이름이변경되었다. POM 과관련한더자세한내용은 문서에서참고할수있다.
6 Maven Chapter3 Page 프로젝트기본정보 이카테고리에서는프로젝트이름, 프로젝트 URL, 프로젝트에참여하는개발자목록, 프로젝트의 라이센스와같은기본적인정보를관리한다. 이부분에대한설정에대해서는별도로설명하지않는다 빌드설정 메이븐빌드와관련한기본적인빌드설정을변경하기위한카테고리이다. 기본소스디렉토리나리소스디렉토리에대한변경이필요할때사용가능하다 (3 장참조 ). 또한기본으로제공하는플러그인의설정을변경할때나새로운플러그인을추가하여메이븐빌드과정에포함시키기위한설정을하는데사용한다 (6,7 장참조 ). 메이븐은프로젝트와관련한다양한리포트문서를생성하는것또한가능하다 (9 장참조 ) POM 관계설정 대부분의프로젝트는다른라이브러리또는프로젝트와의존관계를가지며, 각프로젝트간에는상속 관계를가지는경우도있다. 이와같이각프로젝트간의관계를관리하는부분이다. 이부분에대해서는 5 장과 10 장에서자세하게다룬다 빌드환경 모든프로젝트는다양한환경에배포하는것이가능해야한다. 각환경에따라변경되는부분이발생한다. 이와같이다양한환경에따라다른설정정보를관리하는것이이카테고리이다. 메이븐에서는다양한환경에대한지원을위하여대표적으로프로파일기능을제공한다. 프로파일기능에대해서는 8 장에서다룬다. 그림 3-1 을기반으로 pom.xml 설정파일의주요엘리먼트를살펴보면다음과같다. <project...> <build> 3 <defaultgoal>...</defaultgoal> <finalname>...</finalname> <resources>...</resources> <testresources>...</testresources> <plugins>...</plugins> 6 </build> <reporting>...</reporting> 9 <modules>...</modules> 10
7 Maven Chapter3 Page 7 <dependencies>...</dependencies> 5 <dependencymanagement>...</dependencymanagement> 12 <distributionmanagement>...</distributionmanagement> 11 <pluginmanagement>...</pluginmanagement> 12 <repositories>...</repositories> 5 <pluginrepositories>...</pluginrepositories> 7 <properties>...</properties> 5 <profiles>...</profiles> 8 </project> 예제 3-2 pom.xml 설정파일의주요설정 예제 3-2 는 pom.xml 설정파일의중심이되는엘리먼트를포함하고있다. 각엘리먼트에대한내용은지금시점에모두다룰경우재미도없을뿐만아니라이해도도떨어지기때문에프로젝트를진행하면서새로운설정이등장할때마다하나씩다루도록하겠다. 예제 3-2 의각엘리먼트우측의숫자는해당엘리먼트를다루고있는장의번호이다. 먼저 2 장에서생성한위키북프로젝트의 pom.xml 파일을보면서메이븐설정파일을자세하게살펴보자. <project xmlns=" xmlns:xsi=" xsi:schemalocation=" <modelversion>4.0.0</modelversion> <groupid>net.javajigi</groupid> <artifactid>wikibook</artifactid> <packaging>war</packaging> <version>1.0-snapshot</version> <name>wikibook Maven Webapp</name> <url> <dependencies> <dependency> <groupid>junit</groupid> <artifactid>junit</artifactid> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> <build> <finalname>wikibook</finalname> </build> </project> 예제 3-3 위키북프로젝트의 pom.xml 파일 project: pom.xml 파일의최상위엘리먼트
8 Maven Chapter3 Page 8 modelversion: POM 모델의버전. 가장최근버전이 이다. POM 모델이변경되지않으면수정할필요가없다. groupid: 프로젝트를생성하는조직의고유아이디를결정한다. 일반적으로도메인이름을사용한다. artifactid: 프로젝트를식별하는유일한아이디를의미한다. 예를들어 net.javajigi 라는 groupid 를사용하고있는조직에여러개의프로젝트가존재할수있다. packaging: 프로젝트를어떤형태로패키징할지결정한다. jar, war, ear, pom 등이해당된다. version: 프로젝트의현재버전이다. 개발이완료된버전일경우 1.0, 2.0 과같이사용하겠지만프로젝트가개발중에는 SNAPSHOT 을접미사로사용할수있다. SNAPSHOT 은메이븐의예약어이며, SNAPSHOT 을사용한다면라이브러리를다른방식으로관리한다. name: 프로젝트이름 url: 프로젝트사이트가있다면사이트 URL 을등록한다. dependencies: <dependencies/> 엘리먼트와하위엘리먼트인 <dependency/> 는프로젝트와의존관계에있는라이브러리를관리한다. 예제 3-3 과같이 <dependency/> 를설정하면메이븐저장소에서 junit 버전을개발자 PC 에다운로드한다. 메이븐에서의존관계에있는라이브러리를관리하는기능에대해서는 5 장에서자세하게다룬다. 예제 3-3 의 pom.xml 에서사용한 groupid, artifactid, packaging, version 정보는프로젝트를배포하고, 배포한라이브러리를다른프로젝트에서참조할때사용한다. 메이븐은중앙저장소를가지고있으며, 모든라이브러리를관리해야하기때문에모든프로젝트는고유한값을가져야한다. 따라서 groupid + artifactid 의값이유일한값이되어야한다. 그렇지않을경우중앙저장소에라이브러리를관리할때충돌하는상황이발생할수있기때문이다. 3.3 최상위 POM 설정파일 메이븐은기본적인프로젝트디렉토리구조와메이븐에서사용할수있는기본적인플러그인정보를 포함하고있는 POM 설정파일을제공한다. 이책에서는이 POM 설정파일을최상위 POM 이라고부르도록 하겠다. 최상위 POM 설정파일은메이븐에포함되어있는 jar 파일을통하여배포하고있다. 이최상위 POM 파일은우리가생성하는모든메이븐설정파일의부모 POM 역할을하며, 모든설정 파일은기본으로최상위 POM 을상속 inheritance 하는구조이다 2. 2 상속하고자하는설정파일은 <parent/> 엘리먼트를활용하여변경하는것이가능하다. 메이븐설정파일 간의상속과 <parent/> 엘리먼트에대해서는 10 장에서다루고있다.
9 Maven Chapter3 Page 9 그림 3-2 최상위 POM 과프로젝트별로생성되는 POM 설정파일의관계 메이븐설정파일이상속하고있는 POM 파일의내용을확인하려면 mvn help:effective-pom 명령어를 실행해보면확인할수있다. 2 장에서생성했던 wikibook 디렉토리로이동해 mvn help:effective-pom 을 실행하면다음과같은결과가출력되는것을확인할수있다. <project > [ ] <build> <sourcedirectory>src/main/java</sourcedirectory> <testsourcedirectory>src/test/java</testsourcedirectory> <outputdirectory>target/classes</outputdirectory> <testoutputdirectory>target/test-classes</testoutputdirectory> <resources> <resource> <directory>src/main/resources</directory> </resource> </resources> <testresources> <testresource> <directory>src/test/resources</directory> </testresource> </testresources> [...] </build> <repositories> <repository> <id>central</id> <name>maven Repository Switchboard</name> <url> </repository> </repositories> <pluginmanagement> <plugins> <plugin>
10 Maven Chapter3 Page 10 <artifactid>maven-antrun-plugin</artifactid> <version>1.3</version> </plugin> <plugin> <artifactid>maven-assembly-plugin</artifactid> <version>2.2-beta-2</version> </plugin> <plugin> <artifactid>maven-clean-plugin</artifactid> <version>2.2</version> </plugin> <plugin> <artifactid>maven-compiler-plugin</artifactid> <version>2.0.2</version> </plugin> [...] <plugin> <artifactid>maven-war-plugin</artifactid> <version>2.1-alpha-2</version> </plugin> </plugins> </pluginmanagement></project> 예제 3-4 help:effective-pom 을실행했을때의결과소스 위키북프로젝트에서생성한예제 3-3 의 pom.xml 설정은단순하지만 mvn help:effective-pom 를실행한예제 3-4 의결과는메이븐에서기본으로사용하는디렉토리 ( 소스코드, 테스트소스코드, 리소스, 테스트리소트등등 ) 구조, 중앙저장소, 플러그인과같은많은정보를포함하고있다. 그이유는각각의프로젝트에서생성한 pom.xml 설정은기본적으로최상위 POM 설정을상속하기때문이다. 예제 3-4 의설정은메이븐에서기본으로제공하는최상위 POM 설정에서제공하고있는내용이다. 따라서 2 장에서생성한 myfirst, wikibook 프로젝트의 pom.xml 설정의내용이단순하더라도메이븐의기본적인규약을따르는것이가능한이유이다. 예제 3-4 의최상위 POM 에서새롭게등장한설정을보면다음과같다. build: 프로젝트빌드와관련한기본적인소스디렉토리구조, 빌드산출물디렉토리구조, 빌드시사용할플러그인정보를관리한다. sourcedirectory: 실제서비스를담당하는자바소스코드를관리하는디렉토리. 기본값은 src/main/java testsourcedirectory: 테스트소스를관리하기위한디렉토리. 메이븐빌드툴은서비스소스코드와테스트소스코드를분리해서관리하며, 배포시테스트소스코드가같이배포되지않게한다. 기본값은 src/test/java outputdirectory: sourcedirectory 의소스를컴파일한결과물이위치하는디렉토리. 기본값은 target/classes
11 Maven Chapter3 Page 11 testoutputdirectory: testsourcedirectory 의소스를컴파일한결과물이위치하는디렉토리. 기본값은 target/test-classes resources: 서비스에사용되는자원을관리하는디렉토리. 기본값은 src/main/resources testresources: 테스트시에필요한자원을관리하기위한디렉토리. 기본값은 src/test/resources repositories: 빌드할때접근할저장소의위치를관리한다. 메이븐기본저장소 URL 은 이다. 저장소와관련된더자세한내용은 5 장에서다룬다. pluginmanagement: 빌드설정파일에서관리하는플러그인목록. 이엘리먼트에설정되어있다고해서반드시사용하는것은아니다. 이와관련한더자세한내용은 12 장에서다룬다. 위키북프로젝트는기본적으로최상위 POM 을상속하고있기때문에메이븐의기본디렉토리구조를따라야한다. 메이븐을처음사용하는대부분의개발자들은최상위 POM 에서기본값을정의하고있기때문에메이븐기반프로젝트는반드시이구조를따라야할것으로생각한다. 하지만이미개발자에게익숙한디렉토리구조가존재할수있으며, 다른빌드툴기반으로생성된프로젝트가있는경우에는기본디렉토리를변경하는것이가능해야한다. 메이븐이이같은유연성을보장하기위하여최상위 POM 에서정의한기본설정을변경하고자한다면하위설정파일에서재정의하면된다 3. 만약기본디렉토리가아닌다른디렉토리를사용하고싶다면 pom.xml 설정파일에서변경하면된다. 예를 들어기본디렉토리를다음과같이변경하고자한다. src/main/java => src/java: 3 단계의디렉토리를 2 단계로줄임. src/main/resources => src/resouces: 테스트소스에서사용할자원이없을것으로판단해 src/resources 하나로통합 src/test/java => src/test: 3 단계의디렉토리를 2 단계로줄임. src/main/webapp => webapp: 3 단계의디렉토리를 1 단계로줄임. 웹자원의경우 3 단계까지디렉토리를열고접근해야한다면작업하기불편할것으로판단되어최상위로이동하였다. 그런데위키북프로젝트에서 mvn help:effective-pom 을실행해보면웹자원에대한기본디렉토리를 설정하는부분이없는것을확인할수있다. 메이븐에서웹자원은 maven-war-plugin 에서관리하고있으며, 기본값은 src/main/webapp 디렉토리이다. 위와같이디렉토리구조를변경하고자한다면 pom.xml 설정파일을다음과같이재정의하면된다. 3 이개념은자바언어에서메써드를오버라이딩 overriding 하면메써드의기능을재정의할수있는것과 비슷하다.
12 Maven Chapter3 Page 12 <project > <modelversion>4.0.0</modelversion> <groupid>net.javajigi</groupid> <artifactid>wikibook</artifactid> <packaging>war</packaging> <version>1.0-snapshot</version> <name>wikibook Maven Webapp</name> <url> <build> <finalname>wikibook</finalname> <sourcedirectory>src/java</sourcedirectory> <testsourcedirectory>src/test</testsourcedirectory> <resources> <resource> <directory>src/resources</directory> </resource> </resources> <plugins> <plugin> <artifactid>maven-war-plugin</artifactid> <configuration> <warsourcedirectory>webapp</warsourcedirectory> </configuration> </plugin> </plugins> </build> [...] </project> 예제 3-5 메이븐기본소스디렉토리구조를변경하는 pom.xml 파일 4 메이븐은최상위 POM 에서정의한모든설정을재정의하는것이가능하기때문에메이븐의기본규약을 무조건따라야하는것은아니다. 프로젝트의상황에따라얼마든지유연하게바꿀수있다. 물론 4 장에서 다루게될메이븐의기본빌드라이플사이클에대한변경은할수없다. 3.4 위키북프로젝트기본디렉토리설정완료 메이븐설정파일에대한기본적인내용은파악했으니위키북프로젝트에대한기본디렉토리와설정을 완료해야겠다. 위키북프로젝트는메이븐에서제공하는아키타입을이용하여템플릿프로젝트를생성했다. 4 플러그인설정과관련한내용은이책의 6 장에서다루고있다. 이장에서 maven-war-plugin 플러그인 설정을다룬이유는웹자원을관리하는기본디렉토리와기본디렉토리를변경하는것이가능하다는것을 보여주기위함이다. 이장에서는플러그인은이렇게설정하는것이가능하다는것만알아두기바란다.
13 Maven Chapter3 Page 13 그런데 2 장에서만들었던위키북프로젝트는웹자원을관리하는디렉토리만존재하고자바소스를관리하기위한디렉토리는생성되지않았다. 프로젝트를시작하는시점부터자바소스만별도의프로젝트에서관리할필요가있을까? 처음부터분리해봤자관리비용만늘어날뿐이지별다른효과는없을듯하다. 그렇다면 wikibook 디렉토리와 myfirst 디렉토리를통합해서하나의프로젝트로만든다면웹자원과자바소스를같은프로젝트에관리할수있겠다. wikibook 디렉토리와 myfirst 디렉토리를통합하기위하여 wikibook 디렉토리에 2 장에서생성한 myfirst 프로젝트의 src 디렉토리전체를복사한다 5. 위키북프로젝트의 pom.xml 파일은위키북프로젝트에서생성한설정파일을사용할것이기때문에복사하지않는다. 이과정을통하여생성된위키북프로젝트의디렉토리구조는다음그림과같다. 그림 3-3 위키북프로젝트의기본디렉토리구조 그림 3-3 을보면위키북프로젝트에서웹자원을관리하는기본디렉토리가 src/main/webapp 이다. 과거의경험에비추어볼때이클립스와같은통합개발환경을사용해작업을해보면자바소스는디렉토리단계가많아지더라도큰불편함이없는데웹자원은불편하다. src/main/webapp 를그대로사용하지말고디렉토리의단계를줄여서 webapp 로재정의하는것이좋겠다. 자바소스와리소스디렉토리는메이븐기본디렉토리를유지하고웹자원을관리하는 src/main/webapp 디렉토리를 webapp 로재정의하고자한다. 따라서 maven-war-plugin 의 warsourcedirectory 값만 5 메이븐프로젝트를반드시이와같은과정을통하여생성하지않아도된다. 자바소스와리소스가 추가되는시점에수동으로디렉토리를추가해도된다. 이책에서는편의를위해서 jar 프로젝트의 src 디렉토리를복사하는방법을택했다.
14 Maven Chapter3 Page 14 src/main/webapp 에서 webapp 로재정의한다. 설정파일을변경한후 webapp 디렉토리를 wikibook 디렉토리의 최상위로이동한다. <project...> [ ] <build> <finalname>wikibook</finalname> <plugins> <plugin> <artifactid>maven-war-plugin</artifactid> <configuration> <warsourcedirectory>webapp</warsourcedirectory> </configuration> </plugin> </plugins> </build> </project> 예제 3-6 웹자원경로를변경하기위한위키북프로젝트의 pom.xml 설정 위키북프로젝트에대한기본디렉토리구조와설정파일을완료하였다. 마지막으로위키북프로젝트의설정이정상적으로되었는지확인해보기위하여 mvn package 명령어를실행한다. mvn package 명령을실행하면컴파일, 테스트를완료하고 war 파일로압축까지진행한다. 더자세한내용은 4 장에서다룬다. 위키북프로젝트빌드를완료되면다음과같은디렉토리구조가생성된다.
15 Maven Chapter3 Page 15 그림 3-4 위키북프로젝트를빌드한후의디렉토리구조 위키북프로젝트를빌드하면그림 3-4 와같이 wikibook 디렉토리아래에 target 디렉토리가생성된다. 메이븐은기본적으로빌드후의모든산출물을 target 디렉토리아래에서관리한다. 그림 3-4 의 target 디렉토리아래에생성되는하위디렉토리의용도를살펴보면다음과같다. target/classes: src/main/java 디렉토리의자바소스가컴파일된바이너리코드와 src/main/resources 디렉토리의자원이복사된다. target/test-classes: src/test/java 디렉토리의자바소스가컴파일된바이너리코드와 src/test/resources 디렉토리의자원이복사된다. target/wikibook: war 로패키징하는데필요한모든자원의위치. target/classes 디렉토리하위의파일이 wikibook/web-inf/classes 디렉토리아래에복사된다. target/test-classes 디렉토리하위의파일은제외한다. target/surefire-reports: 빌드하면서생성된리포트문서의위치. < 참고사항 >
16 Maven Chapter3 Page 16 이와같이메이븐에서제공하는아키타입을이용하여프로젝트의뼈대를만들수도있다. 하지만이방법을 사용하여웹기반프로젝트를생성하는경우두개의아키타입기반으로프로젝트를생성한후합치는 작업을하고불필요한설정과소스코드를제거해야하는불편함이있다. 나는일반적으로두가지방식으로프로젝트의뼈대를만든다. 첫번째방법은 m2eclipse( 이클립스플러그인을기반으로메이븐 프로젝트를생성하는방법이다. 이방법에대해서는이책의 6 장에서자세하게다룬다. 두번째방법은 2 장에서와같이 maven-archetype-webapp 아키타입기반으로프로젝트를생성한후 src/main/java, src/test/java 와같은기본디렉토리를필요한시점에직접생성한다. 어떤방법이편할것인지에대해서는개발자의성향마다다르기때문에각자테스트해본후에본인에게 맞는방법을선택하면될것으로생각한다. </ 참고사항 > 작은단계이기는하지만위키북프로젝트를위한메이븐기반프로젝트를완성했다. 지금까지생성한 위키북프로젝트의최종모습을살펴보니다음과같다. 그림 3-5 위키북프로젝트의최종디렉토리구조 지금까지메이븐설정의대부분은미리정의하고있기때문에정해진규칙을반드시따라야하는것으로이해했다. 그런데오늘설정파일을공부하면서이같은선입견이얼마나잘못된것인지느낄수있었다. 지금까지의경험으로비추어봤을때웹자원을관리하는디렉토리의깊이가깊어질경우불편한점이많았다. 그런데어제위키북프로젝트를생성했을때웹자원을관리하는메이븐기본디렉토리가 src/main/webapp 라는것을알았다. 만약이디렉토리를변경할수없다면많은개발자들이불만을토로할것이다. 그동안앤트 Ant 에익숙한상태에서메이븐으로전환하는것도불만인데앤트에서정말쉽게
17 Maven Chapter3 Page 17 지원하는기능도지원할수없다면메이븐에대한불만이더커지리라생각했다. 하지만오늘메이븐설정 파일에대한학습을하면서디렉토리구조를변경하는것이어렵지않다는것을확인하고안도의한숨을쉴 수있었다. 왜메이븐은웹자원에대한기본디렉토리구조를 src/main/webapp 로정했을까? 를고민해봤다. 아무래도웹자원또한개발자가관리해야할소스코드이기때문에모든소스가위치해있는 src 디렉토리아래에위치하는것이맞다. 이론적으로따지면이같은구조가맞지만실질적으로프로젝트를진행하는개발자의입장을고려한다면디렉토리깊이를 webapp 와같이단계를줄이는것이더실용적인접근이겠다. 는생각으로디렉토리를변경했다. 프로젝트에참여하는다른개발자들도내가선택한방법을좋아했다. 오늘은위키북프로젝트의기본디렉토리구조를정하고메이븐설정파일까지완료할수있어뿌듯하다. 이런식으로하나씩배우면서설정파일을발전시켜나간다면메이븐을적용하는것도문제없겠다.
18 Maven Chapter3 Page 메이븐라이프사이클 lifecycle 5. 메이븐을이용한의존라이브러리관리 6. 메이븐과이클립스통합 7. 메이븐과데이터베이스통합 8. 메이븐프로파일, 배포 9. 리포팅기능을활용한문서관리 10. 메이븐모듈 module 11. 메이븐사내저장소설치및활용 12. 표준 POM 파일생성및리팩토링
19 Maven Chapter3 Page 메이븐아키타입 archetype 14. 새로운프로젝트를시작하면서..
Software Requirements Specification Template
Maven Chapter2 Page 1 Table of Contents Table of Contents... 1 Revision History... 2 1. 내가꿈꾸는개발환경... 3 2. 메이븐설치및템플릿프로젝트생성... 3 2.1 메이븐설치... 4 2.2 메이븐기반의템플릿프로젝트생성... 5 2.3 메이븐기본명령어... 8 2.4 위키북템플릿프로젝트생성...10
More informationSoftware Requirements Specification Template
Maven Chapter4 Page 1 Table of Contents Table of Contents... 1 Revision History... 2 1. 내가꿈꾸는개발환경... 3 2. 메이븐설치및템플릿프로젝트생성... 3 3. 메이븐설정파일... 3 4. 메이븐라이프사이클 lifecycle... 3 4.1 메이븐의라이프사이클과페이즈... 4 4.2 메이븐페이즈와플러그인...
More information문서의 제목 나눔고딕B, 54pt
Maven 1. 도구개요 2. 설치및실행 4. 활용예제 1. 도구개요 1.1 도구정보요약 도구명 Maven (http://maven.apache.org/) 라이선스 Apache License, Version 2.0 소개 자바기반프로젝트를빌드하고, 구성요소및라이브러리의존성을관리하는도구 특징 주요기능 프로젝트에필요한라이브러리를 POM 파일만으로쉽게구성가능 Convention
More informationSoftware Requirements Specification Template
Maven Chapter5 Page 1 Table of Contents Table of Contents... 1 Revision History... 2 1. 내가꿈꾸는개발환경... 3 2. 메이븐설치및템플릿프로젝트생성... 3 3. 메이븐설정파일... 3 4. 메이븐라이프사이클 lifecycle... 3 5. 메이븐을이용한의존라이브러리관리... 3 5.1 메이븐의의존라이브러리관리
More informationSocial Media and Social Computing
Maven 2015 Web Service Computing Maven 이란? Apache 프로젝트 소스코드로부터배포가능한산출물 (artifact) 을빌드 (build) 하는 ' 빌드툴 (build tool)' 조금더편리한 ' 프로젝트관리툴 Maven 이없다면? 라이브러리를직접다운로드해서등록하고 path 를지정해줘야한다. Build 소스코드를컴파일한다. 테스트코드를컴파일한다.
More informationSoftware Requirements Specification Template
Maven Chapter6 Page 1 Table of Contents Table of Contents... 1 Revision History... 2 1. 내가꿈꾸는개발환경... 3 2. 메이븐설치및템플릿프로젝트생성... 3 3. 메이븐설정파일... 3 4. 메이븐라이프사이클 lifecycle... 3 5. 메이븐을이용한의존라이브러리관리... 3 6. 메이븐과이클립스통합...
More informationPowerPoint 프레젠테이션
Software Verification Junit, Eclipse 및빌드환경 Team : T3 목차 Eclipse JUnit 빌드환경 1 Eclipse e 소개 JAVA 를개발하기위한통합개발환경 주요기능 Overall 빌드환경 Code edit / Compile / Build Unit Test, Debug 특징 JAVA Code를작성하고이에대한 debugging
More information슬라이드 1
Gradle 1. 도구개요 2. 설치및실행 3. 주요기능 4. 활용예제 1. 도구개요 1.1 도구정보요약 도구명 소개 특징 Gradle (http://www.gradle.org) 소프트웨어빌드자동화도구 라이선스 Apache License v2.0 Gradle 을통해소프트웨어패키지나프로젝트의빌드, 테스팅, 퍼블리슁, 배포등을자동화할수있다. Ant 의유연성과기능을
More informationSpring Boot
스프링부트 (Spring Boot) 1. 스프링부트 (Spring Boot)... 2 1-1. Spring Boot 소개... 2 1-2. Spring Boot & Maven... 2 1-3. Spring Boot & Gradle... 3 1-4. Writing the code(spring Boot main)... 4 1-5. Writing the code(commandlinerunner)...
More information표준프레임워크 Nexus 및 CI 환경구축가이드 Version 3.8 Page 1
표준프레임워크 Nexus 및 CI 환경구축가이드 Version 3.8 Page 1 Index 1. 표준프레임워크 EGOVCI 팩키지설치... 3 1.1 개요... 3 1.2 EGOVCI 압축풀기... 3 1.3 EGOVCI 시스템구성... 3 1.4 CI 시스템구동 (START/STOP)... 4 2. NEXUS 설정정보... 6 2.1 NEXUS 서버구동
More information슬라이드 1
Continuous Integration 변경될때마다소프트웨어를빌드하기 조영호카페PJT팀 2008.09.08 youngho.cho@nhncorp.com 목차 1. 빌드자동화 2. Maven 3. 빌드유형과메커니즘 4. 빌드시간을짧게만들기 1. 빌드자동화 빌드자동화 소프트웨어의개발은복잡할지몰라도소프트웨어의전달 (Delivery) 은버튼하나만누르면되는일이되어야합니다
More information슬라이드 1
SW 개발도구연계 Git - Selenium - Maven - Jenkins 목차 Intro Git Selenium Maven Jenkins Intro 연계도구 분산형형상관리시스템 가벼운브랜치를활용한개발생산성향상 GitHub 등다양한웹기반저장소서비스 웹브라우저상의테스팅자동화 Selenium IDE 를통한브라우저액션녹화 다양한언어및테스팅프레임워크지원 자바기반의빌드자동화
More informationApache Ivy
JBoss User Group The Agile Dependency Manager 김병곤 fharenheit@gmail.com 20100911 v1.0 소개 JBoss User Group 대표 통신사에서분산컴퓨팅기반개인화시스템구축 Process Designer ETL, Input/Output, Mining Algorithm, 통계 Apache Hadoop/Pig/HBase/Cassandra
More informationIntellij spring(mvc) + maven 환경구축 New Project에서좌측 template 유형에서 Maven을선택합니다. 오른쪽상단에 Project SDK는 java SDK가설치된폴더를선택하면됩니다. 오른쪽에 Create from archetyhpe을체
Intellij spring(mvc) + maven 환경구축 New Project에서좌측 template 유형에서 Maven을선택합니다. 오른쪽상단에 Project SDK는 java SDK가설치된폴더를선택하면됩니다. 오른쪽에 Create from archetyhpe을체크하게되면하단에여러유형의 archetype을선택할수있습니다. Maven 기반의웹프로젝트를생성해야하므로
More informationMicrosoft Word - ntasFrameBuilderInstallGuide2.5.doc
NTAS and FRAME BUILDER Install Guide NTAS and FRAME BUILDER Version 2.5 Copyright 2003 Ari System, Inc. All Rights reserved. NTAS and FRAME BUILDER are trademarks or registered trademarks of Ari System,
More information슬라이드 1
Continuous Integration Part 2 Continuous Integration Servers 조영호카페PJT팀 2008.09.01 youngho.cho@nhncorp.com 목차 1. Continuous Integration Servers 2. CruiseControl 3. Bamboo 1. Continuous Integration Severs
More information슬라이드 1
전자정부개발프레임워크 1 일차실습 LAB 개발환경 - 1 - 실습목차 LAB 1-1 프로젝트생성실습 LAB 1-2 Code Generation 실습 LAB 1-3 DBIO 실습 ( 별첨 ) LAB 1-4 공통컴포넌트생성및조립도구실습 LAB 1-5 템플릿프로젝트생성실습 - 2 - LAB 1-1 프로젝트생성실습 (1/2) Step 1-1-01. 구현도구에서 egovframe>start>new
More information개발환경 교육교재
1. 개발환경개요 1. 개발환경개요 개발환경은프레임워크이해관계자중응용 S/W 개발자를위한환경 전자정부개발프레임워크이해관계자주요관심사분석 응용 SW 개발자는전자정부개발프레임워크를기반으로어플리케이션을개발하며, 개발생산성향상을위해전자정부개발프레임워크로부터의개발지원기능이필요함 응용 SW 개발자 개발 실행 응용 SW 응용 SW 는젂자정부개발프레임워크를기반으로개발되는어플리케이션으로써어플리케이션의효과적인동작을위한젂자정부개발프레임워크의실행지원기능이필요함
More informationISP and CodeVisionAVR C Compiler.hwp
USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler http://www.avrmall.com/ November 12, 2007 Copyright (c) 2003-2008 All Rights Reserved. USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler
More information지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함. 한번은 intel CPU를위한 gcc로, 한번은 ARM CPU를위한 gcc로. AR
Configure Kernel Build Environment And kernel & root file system Build 2018-09-27 VLSI Design Lab 1 지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함.
More information[ 스프링부트, 그래들, HelloWorld]STS,Gradle 설치및 WEB MVC 심플예제 간단히 STS 및 Gradle Support Plugin 을설치하여간단히 Spring Boot, Gradle Web 응용프로그램을작성해보자. 0. STS 및 Gradle Su
[ 스프링부트, 그래들, HelloWorld]STS,Gradle 설치및 WEB MVC 심플예제 간단히 STS 및 Gradle Support Plugin 을설치하여간단히 Spring Boot, Gradle Web 응용프로그램을작성해보자. 0. STS 및 Gradle Support Plugin 설치 -. STS 는 https://spring.io/tools/sts/all
More information1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과
1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과 학습내용 1. Java Development Kit(JDK) 2. Java API 3. 자바프로그래밍개발도구 (Eclipse) 4. 자바프로그래밍기초 2 자바를사용하려면무엇이필요한가? 자바프로그래밍개발도구 JDK (Java Development Kit) 다운로드위치 : http://www.oracle.com/technetwork/java/javas
More informationPowerPoint 프레젠테이션
1 Tizen 실습예제 : Remote Key Framework 시스템소프트웨어특론 (2014 년 2 학기 ) Sungkyunkwan University Contents 2 Motivation and Concept Requirements Design Implementation Virtual Input Device Driver 제작 Tizen Service 개발절차
More information내장서버로사용. spring-boot-starter-data-jpa : Spring Data JPA 사용을위한설정 spring-boot-devtools : 개발자도구를제공, 이도구는응용프로그램개발모드에서유 용한데코드가변경된경우서버를자동으로다시시작하는일들을한다. spri
6-20-4. Spring Boot REST CRUD 실습 (JPA, MariaDB) GitHub : https://github.com/leejongcheol/springbootrest 스프링부트에서 REST(REpresentational State Transfer) API 를실습해보자. RESTful 웹서비스는 JSON, XML 및기타미디어유형을생성하고활용할수있다.
More information슬라이드 1
- 1 - 전자정부모바일표준프레임워크실습 LAB 개발환경 실습목차 LAB 1-1 모바일프로젝트생성실습 LAB 1-2 모바일사이트템플릿프로젝트생성실습 LAB 1-3 모바일공통컴포넌트생성및조립도구실습 - 2 - LAB 1-1 모바일프로젝트생성실습 (1/2) Step 1-1-01. 구현도구에서 egovframe>start>new Mobile Project 메뉴를선택한다.
More informationPowerPoint Presentation
Software Verification T4 고수창전소영이세라하지윤 Index 1 CI 2 IntelliJ IDEA 3 JUnit 4 Build Environment 5 Git 1 Continuous Integration What is CI? 소프트웨어개발에서 Build/Test 의프로세스를지속적으로수행하는것 개발자생산성향상 버그의빠른발견및해결 더빠른업데이트제공
More information파워포인트
S O F T WA R E V E R I F I CAT I O N Junit & Eclipse 및빌드환경 TEAM 1 컴퓨터공학부 201011314 김민재 201011356 이종찬 201011376 한지승 201111329 강성길 2015.03.18 I N D E X 1 Purpose & CI 2 Eclipse 3 JUnit 4 Build Environment
More information쉽게 풀어쓴 C 프로그래밍
Power Java 제 20 장패키지 이번장에서학습할내용 패키지의개념 패키지로묶는방법 패키지사용 기본패키지 유틸리티패키지 패키지는연관된클래스들을묶는기법입니다. 패키지란? 패키지 (package) : 클래스들을묶은것 자바라이브러리도패키지로구성 ( 예 ) java.net 패키지 네트워크관련라이브러리 그림 20-1. 패키지의개념 예제 패키지생성하기 Q: 만약패키지문을사용하지않은경우에는어떻게되는가?
More information표준프레임워크로 구성된 컨텐츠를 솔루션에 적용하는 것에 문제가 없는지 확인
표준프레임워크로구성된컨텐츠를솔루션에적용하는것에문제가없는지확인 ( S next -> generate example -> finish). 2. 표준프레임워크개발환경에솔루션프로젝트추가. ( File -> Import -> Existring Projects into
More information문서의 제목 나눔고딕B, 54pt
Software Verification Introduction to Software Testing & Static Analysis 2조이상혁왕홍강김태영 2016-03-18 1.1 Overview 2 / 87 Overview 1.1 Overview 3 / 87 Overview 1.2 Install JDK 4 / 87 Install JDK JDK 8 다운로드페이지
More information1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot)
1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다. 1.1. 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot) 만별도로필요한경우도있어툴체인설치및설정에대해알아봅니다. 1.1.1. 툴체인설치 다음링크에서다운받을수있습니다.
More informationGeoTools 3D Extension Guide 출시 0.5.0 Soojin Kim, Hyung-Gyu Ryoo 12 월 02, 2017 Modules 1 목차 3 1.1 개요................................................... 3 1.2 Geometry.................................................
More information슬라이드 1
Software Verification #3 정적분석도구, 단위 / 시스템테스트도구 Software Verification Team 4 강 정 모 송 상 연 신 승 화 1 Software Verification #3 정적분석도구, 단위 / 시스템테스트도구 CONTENTS 01 Overall Structure 02 Static analyzer SonarQube
More informationSecure Programming Lecture1 : Introduction
Malware and Vulnerability Analysis Lecture3-2 Malware Analysis #3-2 Agenda 안드로이드악성코드분석 악성코드분석 안드로이드악성코드정적분석 APK 추출 #1 adb 명령 안드로이드에설치된패키지리스트추출 adb shell pm list packages v0nui-macbook-pro-2:lecture3 v0n$
More information을풀면된다. 2. JDK 설치 JDK 는 Sun Developer Network 의 Java( 혹은 에서 Download > JavaSE 에서 JDK 6 Update xx 를선택하면설치파일을
안드로이드설치및첫번째예제 안드로이드설치 안드로이드개발킷은안드로이드개발자사이트 (http://developer.android.com/) 에서다운로드받을수있으며현재 1.5 버전으로윈도우즈, 맥 OS X( 인텔 ), 리눅스플랫폼패키지가링크되어져있다. 안드로이드개발킷을설치하기위해서는다음과같은시스템환경이갖추어져있어야한다. 플랫폼 Windows Mac Linux 지원환경
More informationMicrosoft PowerPoint - MonthlyInsighT-2018_9월%20v1[1]
* 넋두리 * 저는주식을잘한다고생각합니다. 정확하게는주식감각이있다는것이맞겠죠? 예전에애널리스트가개인주식을할수있었을때수익률은엄청났었습니다 @^^@. IT 먼쓸리가 4주년이되었습니다. 2014년 9월부터시작하였으니지난달로만 4년이되었습니다. 4년간누적수익률이최선호주는 +116.0%, 차선호주는 -29.9% 입니다. 롱-숏으로계산하면 +145.9% 이니나쁘지않은숫자입니다.
More information슬라이드 1
Jenkins 1. 도구개요 2. 설치및실행 3. 주요기능 1. 도구개요 1.1 도구정보요약 도구명 Jenkins (http://jenkins-ci.org/) 라이선스 MIT License 소개 CI ( 연속적통합 ) 도구 빌드, 배포등반복되는작업을모니터링하는도구. 특징 쉬운설치및웹기반으로된쉬운 UI 제공 여러 project 동시 Build 제공 다양한언어
More information4) 5) 6) 7)
1) 2) 3) 4) 5) 6) 7) 8) 9) 10) 11) 12) 13) 14) 15) 16) 17) 18) 19) 20) 21) 22) 23) 24) 25) 26) 27) 28) 29) 30) 31) 32) 33) 34) 35) 36) 37) 38) 39) 40) 41) 42) 43) 44) 45) 46) 47) 48) 49) 50) 51) 52) 53)
More informationC# Programming Guide - Types
C# Programming Guide - Types 최도경 lifeisforu@wemade.com 이문서는 MSDN 의 Types 를요약하고보충한것입니다. http://msdn.microsoft.com/enus/library/ms173104(v=vs.100).aspx Types, Variables, and Values C# 은 type 에민감한언어이다. 모든
More informationMicrosoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx
To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 Eclipse (IDE) JDK Android SDK with ADT IDE: Integrated Development Environment JDK: Java Development Kit (Java SDK) ADT: Android Development Tools 2 JDK 설치 Eclipse
More informationMicrosoft Word - 3부A windows 환경 IVF + visual studio.doc
Visual Studio 2005 + Intel Visual Fortran 9.1 install Intel Visual Fortran 9.1 intel Visual Fortran Compiler 9.1 만설치해서 DOS 모드에서실행할수있지만, Visual Studio 2005 의 IDE 를사용하기위해서는 Visual Studio 2005 를먼저설치후 Integration
More informationSpring
Spring MVC 프로젝트생성 2015 Web Service Computing 일반적인스프링의정의 스프링의정의 자바엔터프라이즈개발을편하게해주는오픈소스경량급애플리케이션프레임워크 스프링의기원 로드존슨 (Rod Johnson) 이라는유명 J2EE 개발자가출간한 Expert One-on- One J2EE Design and Development 이라는제목의책에소개된예제샘플
More informationSQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자
SQL Developer Connect to TimesTen 유니원아이앤씨 DB 팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 2010-07-28 작성자 김학준 최종수정일 2010-07-28 문서번호 20100728_01_khj 재개정이력 일자내용수정인버전
More information소프트웨어 검증 및 설계
1 : 2018-03-21 Junit & IntelliJ 및빌드환경 Software Verification T1 [2018SV][T1] 201311263 김민환 201311308 전세진 201411278 서희진 201411317 조민규 1 INDEX 1. 2. 3. IDE IntelliJ Unit Test JUnit Build Configuration & CI
More informationMicrosoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx
To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 개발환경구조및설치순서 JDK 설치 Eclipse 설치 안드로이드 SDK 설치 ADT(Androd Development Tools) 설치 AVD(Android Virtual Device) 생성 Hello Android! 2 Eclipse (IDE) JDK Android SDK with
More informationiii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.
Eclipse 개발환경에서 WindowBuilder 를이용한 Java 프로그램개발 이예는 Java 프로그램의기초를이해하고있는사람을대상으로 Embedded Microcomputer 를이용한제어시스템을 PC 에서 Serial 통신으로제어 (Graphical User Interface (GUI) 환경에서 ) 하는프로그램개발예를설명한다. WindowBuilder:
More informationJVM 메모리구조
조명이정도면괜찮조! 주제 JVM 메모리구조 설미라자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조장. 최지성자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조원 이용열자료조사, 자료작성, PPT 작성, 보고서작성. 이윤경 자료조사, 자료작성, PPT작성, 보고서작성. 이수은 자료조사, 자료작성, PPT작성, 보고서작성. 발표일 2013. 05.
More information문서의 제목 나눔명조R, 40pt
SOFTWARE VERIFICATION JUnit & IntelliJ IDEA 및빌드환경 TEAM _5 201313250 서지혁 201214262 라가영 2016. 03. 18 목차 1. CI 2. IntelliJ IDEA 3. JUnit 4. Build Enviroment 1. CI What is CI? 프로젝트에참여주인개발자들의결과물을지속적으로통합하고,
More information<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>
SIMATIC S7 Siemens AG 2004. All rights reserved. Date: 22.03.2006 File: PRO1_17E.1 차례... 2 심벌리스트... 3 Ch3 Ex2: 프로젝트생성...... 4 Ch3 Ex3: S7 프로그램삽입... 5 Ch3 Ex4: 표준라이브러리에서블록복사... 6 Ch4 Ex1: 실제구성을 PG 로업로드하고이름변경......
More information1) 인증서만들기 ssl]# cat >www.ucert.co.kr.pem // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키
Lighttpd ( 멀티도메인 ) SSL 인증서신규설치가이드. [ 고객센터 ] 한국기업보안. 유서트기술팀 1) 인증서만들기 [root@localhost ssl]# cat www.ucert.co.kr.key www.ucert.co.kr.crt >www.ucert.co.kr.pem // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat
More information제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호
제이쿼리 () 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호 CSS와마찬가지로, 문서에존재하는여러엘리먼트를접근할수있다. 엘리먼트접근방법 $( 엘리먼트 ) : 일반적인접근방법
More information슬라이드 1
Subclipse 1. 도구개요 2. 설치및실행 3. 주요기능 4. 활용예제 1. 도구개요 도구명 Subclipse (http://subclipse.tigris.org/) 라이선스 Eclipse Public License v1.0 소개 Subversion( 이하 svn) 용 Eclipse 플러그인 SVN 을만든 Tigris.org 에서만든클라이언트툴 Java
More information리눅스 프로세스 관리
프로세스 (Process) Process 프로그램이나명령어를실행하면메모리에적재되어실제로실행되고있는상태를의미 이러한프로세스들은프로세스가시작하면서할당받는프로세스식별번호인 PID(Process ID), 해당프로세스를실행한부모프로세스를나타내는 PPID(Parent Process ID), UID 와 GID 정보를통해해당프로세스가어느사용자에속해있는지, 프로세스가파일에대해갖는권한및프로세스가실행된터미널,
More informationSpring Framework RESTful 지원 REST API는웹서비스를개발하는표준방법이되었고자바와관련하여사용할수있는많은프레임워크와라이브러리가있다. JAX-RS, Restlet, Jersey, RESTEasy, Apache CFX 등이있지만 Java
6-20-1. Spring Framework RESTful 지원 REST API는웹서비스를개발하는표준방법이되었고자바와관련하여사용할수있는많은프레임워크와라이브러리가있다. JAX-RS, Restlet, Jersey, RESTEasy, Apache CFX 등이있지만 Java 개발자는 Spring MVC를사용하여 RESTful 웹서비스를개발하는것이좋다. RESTful
More informationMango-IMX6Q mfgtool을 이용한 이미지 Write하기
Mango-IMX6Q mfgtool 을 이용한이미지 Write 하기 http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 1 Document
More informationgnu-lee-oop-kor-lec06-3-chap7
어서와 Java 는처음이지! 제 7 장상속 Super 키워드 상속과생성자 상속과다형성 서브클래스의객체가생성될때, 서브클래스의생성자만호출될까? 아니면수퍼클래스의생성자도호출되는가? class Base{ public Base(String msg) { System.out.println("Base() 생성자 "); ; class Derived extends Base
More information01....b74........62
4 5 CHAPTER 1 CHAPTER 2 CHAPTER 3 6 CHAPTER 4 CHAPTER 5 CHAPTER 6 7 1 CHAPTER 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
More information¾Ë·¹¸£±âÁöħ¼�1-ÃÖÁ¾
Chapter 1 Chapter 1 Chapter 1 Chapter 2 Chapter 2 Chapter 2 Chapter 2 Chapter 2 Chapter 3 Chapter 3 Chapter 3 Chapter 3 Chapter 3 Chapter 3 Chapter 3 Chapter 3 Chapter 4 Chapter 4
More information(291)본문7
2 Chapter 46 47 Chapter 2. 48 49 Chapter 2. 50 51 Chapter 2. 52 53 54 55 Chapter 2. 56 57 Chapter 2. 58 59 Chapter 2. 60 61 62 63 Chapter 2. 64 65 Chapter 2. 66 67 Chapter 2. 68 69 Chapter 2. 70 71 Chapter
More information항목
Cloud 컴퓨팅기반분산파일시스템개요 개발실 UPDATE : 2012. 11 18 INDEX 1. 가용성 2. 확장성 3. PrismFS 4. Q&A 2 가용성 3 Gmail 장애 2011년 2월 27일 34000명의 Gmail 사용자들이일어나보니메일, 주소록, 채팅기록등이사라진것을발견 2011년 2월 28일 스토리지소프트웨어업데이트를진행하는중 Bug로인해발생했다고공지
More information2. 기능요약 Parallel 빌드지원등빌드자동화기능을지원하며다양한도구 ( 형상관리도구, Issue Tracker, Test 도구, IDE) 와의연동을지원함. 주요기능 Parallel 빌드지원 ( 다수프로젝트동시빌드 ) 분산빌드웹기반관리 알림형상관리도구지원
1. 도구개요 소개 주요기능 은 CI(Continuous Integration) 를지원하는도구이며또한지속적인빌드프로세스생성을위한확장가 능한프레임워크임. 빌드루프 (Build loop): 코어모듈, 빌드를주기적으로실행하고실행결과를사용자에게통보 리포팅 : 사용자가빌드결과를볼수있도록제공 대시보드 : 모든프로젝트빌드상태를가시적으로보여줌 카테고리 세부카테고리 배포관리
More informationMicrosoft PowerPoint - chap01-C언어개요.pptx
#include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 프로그래밍의 기본 개념을
More informationDesign Issues
11 COMPUTER PROGRAMMING INHERIATANCE CONTENTS OVERVIEW OF INHERITANCE INHERITANCE OF MEMBER VARIABLE RESERVED WORD SUPER METHOD INHERITANCE and OVERRIDING INHERITANCE and CONSTRUCTOR 2 Overview of Inheritance
More informationPowerPoint 프레젠테이션
사용자계정관리 운영체제실습 목차 Ⅲ. 사용자계정관리 4.1 사용자계정관리 4.2 그룹관리 4.3 사용자계정관련파일 4.4 패스워드관리 4.5 사용자신분확인 4.1 사용자계정관리 사용자생성관련명령어 사용자생성 : useradd / adduser 사용자삭제 : userdel 사용자정보변경 : usermod 패스워드설정및변경 : passwd 그룹생성관련명령어 group
More informationJUNIT 실습및발표
JUNIT 실습및발표 JUNIT 접속 www.junit.org DownLoad JUnit JavaDoc API Document 를참조 JUNIT 4.8.1 다운로드 설치파일 (jar 파일 ) 을다운로드 CLASSPATH 를설정 환경변수에서설정 실행할클래스에서 import JUnit 설치하기 테스트실행주석 @Test Test 를실행할 method 앞에붙임 expected
More informationPowerPoint 프레젠테이션
BOOTLOADER Jo, Heeseung 부트로더컴파일 부트로더소스복사및압축해제 부트로더소스는웹페이지에서다운로드 /working 디렉터리로이동한후, wget으로다운로드 이후작업은모두 /working 디렉터리에서진행 root@ubuntu:# cp /media/sm5-linux-111031/source/platform/uboot-s4210.tar.bz2 /working
More information슬라이드 1
CCS v4 사용자안내서 CCSv4 사용자용예제따라하기안내 0. CCS v4.x 사용자 - 준비사항 예제에사용된 CCS 버전은 V4..3 버전이며, CCS 버전에따라메뉴화면이조금다를수있습니다. 예제실습전준비하기 처음시작하기예제모음집 CD 를 PC 의 CD-ROM 드라이브에삽입합니다. 아래안내에따라, 예제소스와헤더파일들을 PC 에설치합니다. CD 드라이브 \SW\TIDCS\TIDCS_DSP80x.exe
More informationInstall stm32cubemx and st-link utility
STM32CubeMX and ST-LINK Utility for STM32 Development 본문서는 ST Microelectronics 의 ARM Cortex-M 시리즈 Microcontroller 개발을위해제공되는 STM32CubeMX 와 STM32 ST-LINK Utility 프로그램의설치과정을설명합니다. 본문서는 Microsoft Windows 7
More information슬라이드 1
Delino EVM 용처음시작하기 - 프로젝트만들기 (85) Delfino EVM 처음시작하기앞서 이예제는타겟보드와개발홖경이반드시갖추어져있어야실습이가능합니다. 타겟보드 : Delfino EVM + TMS0F85 초소형모듈 개발소프트웨어 : Code Composer Studio 4 ( 이자료에서사용된버전은 v4..입니다. ) 하드웨어장비 : TI 정식 JTAG
More information<31332DB9E9C6AEB7A2C7D8C5B72D3131C0E528BACEB7CF292E687770>
보자. 이제 v4.6.2-1 로업데이트됐다. 그림 F-15의하단처럼 msfupdate를입력해 root @bt:~# msfudpate 그림 F-16 과같이정상적으로업데이트가진행되는것을볼수있다. 이후에는 msfupdate를입력하면최신업데이트모듈과공격코드를쉽게유지할수있다. 그림 F-16 msfupdate의진행확인 G. SET 업데이트문제해결 백트랙을기본설치로운영을할때에는
More information歯MW-1000AP_Manual_Kor_HJS.PDF
Page 2 Page 3 Page 4 Page 5 Page 6 Page 7 Page 8 Page 9 Page 10 Page 11 Page 12 Page 13 Page 14 Page 15 Page 16 Page 17 Page 18 Page 19 Page 20 Page 21 Page 22 Page 23 Page 24 Page 25 Page 26 Page 27 Page
More informationPowerPoint Presentation
Class - Property Jo, Heeseung 목차 section 1 클래스의일반구조 section 2 클래스선언 section 3 객체의생성 section 4 멤버변수 4-1 객체변수 4-2 클래스변수 4-3 종단 (final) 변수 4-4 멤버변수접근방법 section 5 멤버변수접근한정자 5-1 public 5-2 private 5-3 한정자없음
More information1) 인증서만들기 ssl]# cat >www.ucert.co.kr.pem // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키
Lighttpd ( 단일도메인 ) SSL 인증서신규설치가이드. [ 고객센터 ] 한국기업보안. 유서트기술팀 1) 인증서만들기 [root@localhost ssl]# cat www.ucert.co.kr.key www.ucert.co.kr.crt >www.ucert.co.kr.pem // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat
More information4S 1차년도 평가 발표자료
모바일 S/W 프로그래밍 안드로이드개발환경설치 2012.09.05. 오병우 모바일공학과 JDK (Java Development Kit) SE (Standard Edition) 설치순서 Eclipse ADT (Android Development Tool) Plug-in Android SDK (Software Development Kit) SDK Components
More information슬라이드 1
Software Verification #1 Junit, Eclipse 및빌드환경 Software Verification Team 4 강 정 모 송 상 연 신 승 화 1 Software Verification #1 Junit, Eclipse 및빌드환경 CONTENTS 01 Overall Structure 02 IDE - IntelliJ 03 Build Environment
More information리눅스설치가이드 3. 3Rabbitz Book 을리눅스에서설치하기위한절차는다음과같습니다. 설치에대한예시는우분투서버 기준으로진행됩니다. 1. Java Development Kit (JDK) 또는 Java Runtime Environment (JRE) 를설치합니다. 2.
3. 3Rabbitz Book 을리눅스에서설치하기위한절차는다음과같습니다. 설치에대한예시는우분투서버 기준으로진행됩니다. 1. Java Development Kit (JDK) 또는 Java Runtime Environment (JRE) 를설치합니다. 2. 3Rabbitz Book 애플리케이션파일다운로드하여압축파일을풀고복사합니다. 3. 3Rabbitz Book 실행합니다.
More informationInsertColumnNonNullableError(#colName) 에해당하는메시지출력 존재하지않는컬럼에값을삽입하려고할경우, InsertColumnExistenceError(#colName) 에해당하는메시지출력 실행결과가 primary key 제약에위배된다면, Ins
Project 1-3: Implementing DML Due: 2015/11/11 (Wed), 11:59 PM 이번프로젝트의목표는프로젝트 1-1 및프로젝트 1-2에서구현한프로그램에기능을추가하여간단한 DML을처리할수있도록하는것이다. 구현한프로그램은 3개의 DML 구문 (insert, delete, select) 을처리할수있어야한다. 테이블데이터는파일에저장되어프로그램이종료되어도사라지지않아야한다.
More information슬라이드 1
Git 1. 도구개요 2. 설치및실행 3. 주요기능 4. 활용예제 1. 도구개요 1.1 도구정보요약 도구명 소개 Git (http://git-scm.com/) 라이선스 리누스토발즈가만든분산형버전관리시스템 대부분의공개 SW 가 Git 을이용해서관리되고있음 General Public License v2 GitHub, BitBucket, GitLab 등웹기반의다양한소스저장소서비스의기반
More informationPowerPoint Template
JavaScript 회원정보 입력양식만들기 HTML & JavaScript Contents 1. Form 객체 2. 일반적인입력양식 3. 선택입력양식 4. 회원정보입력양식만들기 2 Form 객체 Form 객체 입력양식의틀이되는 태그에접근할수있도록지원 Document 객체의하위에위치 속성들은모두 태그의속성들의정보에관련된것
More informationPowerPoint 프레젠테이션
B Type 가이드 가지고있는도메인사용 + 인증서구매대행절차 1. 신청하기. 네임서버변경 / 확인 - 네임서버변경 - 네임서버변경확인 3. 인증심사메일에회신하기 - 메일주소확인 - 메일주소변경 - 인증심사메일서명 4. Ver. 015.10.14 가지고있는도메인사용 + 인증서구매대행절차 도메인은가지고있으나인증서가없는경우소유한도메인주소로 를오픈하고인증서는 Qoo10
More informationMicrosoft Word - CPL-TR OM2M.doc
OM2M 오픈소스설치가이드 2014 년 10 월 경북대학교통신프로토콜연구실 강형우 (hwkang0621@gmail.com) 요약 최근사물인터넷 (Internet of Things IoT) 이주요이슈가되고있다. 기존인간중심의통신패러다임에서사물이통신의주체로참여하는 IoT에대한시대가도래될것으로전망되는지금전세계적으로다양한오픈플랫폼을통하여 IoT 서비스들을제공하기위한노력이계속되고있다.
More informationSyslog 서버개발예제 1. New project new.bat 파일을 d:\kraken\examples 에복사하고명령프롬프트에서다음과같이실행 new [artifact id] [package]..or.. mvn archetype:generate -DarchetypeG
Syslog 서버개발예제 1. New project new.bat 파일을 d:\kraken\examples 에복사하고명령프롬프트에서다음과같이실행 new [artifact id] [package]..or.. mvn archetype:generate -DarchetypeGroupId=org.krakenapps -DarchetypeArtifactId=kraken-template
More informationMicrosoft PowerPoint - chap02-C프로그램시작하기.pptx
#include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의
More informationAngry MOMO Presentation
소프트웨어검증 Junit/ Eclipse / 빌드환경 T3 박준모 200911391 한종철 200911429 신민용 201111364 * T3 Software Verification 목차 1 Eclipse 2 JUnit 3 빌드환경 + Q&A 2 1 Eclipse 1-1 JDK -JVM JRE JDK -JDK 설치 -path 설정 -설치확인 -JDK 설치오류및해결방법
More informationMicrosoft PowerPoint - chap06-2pointer.ppt
2010-1 학기프로그래밍입문 (1) chapter 06-2 참고자료 포인터 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 포인터의정의와사용 변수를선언하는것은메모리에기억공간을할당하는것이며할당된이후에는변수명으로그기억공간을사용한다. 할당된기억공간을사용하는방법에는변수명외에메모리의실제주소값을사용하는것이다.
More informationXSS Attack - Real-World XSS Attacks, Chaining XSS and Other Attacks, Payloads for XSS Attacks
XSS s XSS, s, May 25, 2010 XSS s 1 2 s 3 XSS s MySpace 사건. Samy (JS.Spacehero) 프로필 페이지에 자바스크립트 삽입. 스크립트 동작방식 방문자를 친구로 추가. 방문자의 프로필에 자바스크립트를 복사. 1시간 만에 백만 명이 친구등록. s XSS s 위험도가 낮은 xss 취약점을 다른 취약점과 연계하여
More information<4D F736F F F696E74202D20C1A632C0E520C7C1B7CEB1D7B7A5B0B3B9DFB0FAC1A4>
쉽게풀어쓴 C 언어 Express 제 2 장프로그램개발과정 통합개발환경 통합개발환경 (IDE: integrated development environment) 에디터 + 컴파일러 + 디버거 Visual C++: 이클립스 (eclipse): Dev-C++: 마이크로소프트제작 오픈소스프로젝트 오픈소스프로젝트 통합개발환경의종류 비주얼 C++(Visual C++)
More information<3235B0AD20BCF6BFADC0C720B1D8C7D120C2FC20B0C5C1FE20322E687770>
25 강. 수열의극한참거짓 2 두수열 { }, {b n } 의극한에대한 < 보기 > 의설명중옳은것을모두고르면? Ⅰ. < b n 이고 lim = 이면 lim b n =이다. Ⅱ. 두수열 { }, {b n } 이수렴할때 < b n 이면 lim < lim b n 이다. Ⅲ. lim b n =0이면 lim =0또는 lim b n =0이다. Ⅰ 2Ⅱ 3Ⅲ 4Ⅰ,Ⅱ 5Ⅰ,Ⅲ
More informationMango-AM335x LCD Type 커널 Module Parameter에서 변경하기
Mango-AM335x LCD Type 커널 Module Parameter 에서 변경하기 http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology
More informationMicrosoft Word - 안드로이드_개발_매뉴얼1.docx
안드로이드개발매뉴얼 2009/11/18 모비젠 TI연구소 MA연구팀허광남 kenu@mobigen.com From: http://www.android.com/goodies/ 목차 들어가며... 1 안드로이드개요... 1 안드로이드 SDK... 5 이클립스설치... 8 Hello Android 프로젝트만들기... 10 안드로이드프로젝트실행... 12 맺으며...
More informationOM2M 기반의 OHP-M2M 오픈소스설치가이드 2015 년 8 월 경북대학교통신프로토콜연구실 최예찬, 강형우 요약 사물인터넷 (Internet of Things: IoT) 이이슈가되면서다양한사
OM2M 기반의 OHP-M2M 오픈소스설치가이드 2015 년 8 월 경북대학교통신프로토콜연구실 최예찬, 강형우 zns038053@gmail.com, hwkang0621@gmail.com 요약 사물인터넷 (Internet of Things: IoT) 이이슈가되면서다양한사물인터넷기반의오픈소스가공개가되고있다. 본문서에서는그중 Eclipse에서공개한 OM2M 플랫폼을기반으로개발된헬스케어플랫폼인
More informationtut_modelsim(student).hwp
ModelSim 사용법 1. ModelSim-Altera 를이용한 Function/RTL 시뮬레이션 1.1. 테스트벤치를사용하지않는명령어기반시뮬레이션 1.1.1. 시뮬레이션을위한하드웨어 A B S C 그림 1. 반가산기 1.1.2. 작업디렉토리 - File - Change Directory 를클릭하여작업디렉토리지정. 1.1.3. 소스파일작성 - 모델심편집기나기타편집기가능
More informationMicrosoft PowerPoint - aj-lecture1.ppt [호환 모드]
인터넷과웹서비스 개발환경구성, JSP 기본구조 인터넷과 WWW(World Wide Web) 인터넷은 TCP/IP 기반의네트워크가전세계적으로확대되어하나로연결된 네트워크의네트워크 WWW(World Wide Web) 는인터넷기반의서비스중하나 이름프로토콜포트기능 WWW http 80 웹서비스 524730-1 2019 년봄학기 3/11/2019 박경신 Email SMTP/POP3/IMAP
More information소프트웨어설치 1. 소프트웨어설치및제거 ( 소스코드 ) 소스코드컴파일을이용한 S/W 설치 1. 소스코드다운로드 - 예 ) httpd tar.gz - 압축해제 : #tar xzvf httpd tar.gz - INSTALL 또는 README파일참조
운영체제실습 소프트웨어관리 2016. 6 표월성 passwd74@naver.com cherub.sungkyul.ac.kr 목차 Ⅶ. 소프트웨어관리 1. 소스코드컴파일을이용한소프트웨어설치 2. RPM패키지를이용한소프트웨어설치 3. YUM패키지를이용한소프트웨어설치 4. APT패키지를이용한소프트웨어설치 5. Telnet서버설치 6. ssh서버 (openssh) 설치
More informationKeil Flexlm 라이선스 설명서
Copyright 2013 EMThink. All rights reserved. Date: 13 年 8 月 14 日 목차 라이선스서버의 HOSTID 찾기...3 라이선스파일만들기...5 라이선스서버프로그램다운로드하기...5 라이선스서버프로그램설치하기...6 라이선스파일수정하기...6 라이선스서버프로그램시작하기...7 라이선스서버프로그램종료하기...9 Page
More informationMicrosoft PowerPoint - jfeature장범석서재원박동현.pptm
소프트웨어검증 J F JFeature REQUIREMENT COVERAGE TOOL 장범석서재원박동현 순서 1. JFeature 소개 2. JFeature 사용 3. JFeature VS OSRMT 4. 프로젝트적용방안 1. JFeature 소개 1. JFeature 소개 JFeature Feature/requirement coverage tool 개발하는코드에해당하는요구사항에초점
More informationPowerPoint 프레젠테이션
SMV 소개 Konkuk Univ. IT 융합정보보호학과 오예원, 박선영 목차 SMV 소개 CTL NuSMV 설치방법및예시 (lift) 향후계획 SMV SMV(Symbolic Model Verifier) 는유한상태시스템 (finite state system) 이 CTL(Computation Tree Logic) 이라는논리와 BDD(Binary Decision
More information