2017-01-23 1 views
0

저는 Ant 빌드 도구에서 Maven 도구로 변환하는 중입니다. 개미의 build.xml 아래 방법maven에서 속성 집합으로 선언 된 속성에 대한 클래스 경로를 설정하는 방법

<property name="home.dir" value="${basedir}"/> 
<property name="external.dir" value="${home.dir}/external"/> 

의 속성을 초기화하고 클래스 경로는 아래와 같이 build.xml 파일에 설정되어 있습니다 :

<target name="setClassPath"> 
    <path id="classpath_jars"> 
     <fileset dir="${external.dir}/log4j" includes="*.jar"/> 
    </path> 
</target> 

당신이 치어에 클래스 경로를 추가하는 방법을 좀 도와 주 시겠어요. xml?

답변

1

additionalClasspathElement 태그를 사용하여 사용자 정의 클래스 경로를 pom.xml에 추가 할 수 있습니다.

<additionalClasspathElement>${external.dir}/log4j</additionalClasspathElement> 
+1

log4j를 프로젝트에 종속성으로 추가하지 않는 이유는 무엇입니까? 구성 **에 대한 원칙 **에 위배되는 것이 맞습니까? – JimHawkins

+0

은 해결책이지만 @user는 특별히 클래스 경로 설정을 요청했습니다. –

+1

물론 그는했지만, 그는 maven과 함께 초보자입니다. 그래서 우리는 maven의 원리를 지적해야합니다 – JimHawkins

1

당신의 pom.xml에 클래스 경로를 추가하는 방법을 좀 도와 주 시겠어요?

maven을 사용할 때 클래스 경로를 수동으로 정의하지 마십시오. 당신이 시작 메이븐 학습이 때 내면화했습니다 가장 기본적인 것들
하나는 : Maven은 모든 라이브러리 (받는다는 용어는 의존성이다) 것을, 이것이 의미하는 클래스 경로에 대한 구성

를 통해 개념 규칙을 다음과 어떤 당신은 섹션 <dependencies>pom.xml에 자동으로 classpath의 일부가 추가됩니다.

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>de.so</groupId> 
    <artifactId>csvProject</artifactId> 
    <version>1.0.0</version> 

    <properties> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <log4j.version>2.3</log4j.version> 
    </properties> 

    <dependencies> 
     <dependency> 
      <groupId>com.opencsv</groupId> 
      <artifactId>opencsv</artifactId> 
      <version>3.7</version> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.commons</groupId> 
      <artifactId>commons-lang3</artifactId> 
      <version>3.4</version> 
     </dependency> 

     <dependency> 
      <groupId>org.apache.logging.log4j</groupId> 
      <artifactId>log4j-api</artifactId> 
      <version>${log4j.version}</version> 
      <scope>compile</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.logging.log4j</groupId> 
      <artifactId>log4j-core</artifactId> 
      <version>${log4j.version}</version> 
      <scope>runtime</scope> 
     </dependency> 
    </dependencies> 
</project> 

당신이 설정 파일 또는 클래스 패스의 일부가 될 수있는 이미지가 필요한 경우, 그 프로젝트의 resources 폴더에 넣어.

전형적인 선발 Maven 프로젝트는 다음과 같습니다 : 더 많은 정보에 대한

csvProject 
| pom.xml 
| 
+---src 
| +---main 
| | +---java 
| | | \---de 
| | |  \---so 
| | |    CsvExample.java 
| | | 
| | \---resources 
| | | \---images 
| | | |   logo.png 
| | | | some.properties 
| | | \---de 
| |   \---so 
| |     more.properties 
| \---test 
|  \---java 

Maven home보고 또는 자습서를 찾기 위해 구글을 사용합니다.

관련 문제