maven을 사용하는 경우 보통 java 또는 resources 아래에 log4j.properties를 넣습니까?
기존 Maven 디렉토리를 사용할 경우 log4j.properties 파일을 어디에 저장해야 합니까?
src/main/resources
이것을 위한 "표준 배치"입니다.
업데이트: 위의 답변은 질문에 대한 답변이지만 최선의 해결책은 아닙니다.다른 답변과 코멘트를 확인해 주세요.jar와 함께 자신의 로깅 속성을 발송하지 않고 클라이언트(앱 서버, 스테이지 환경 등)에 맡겨 원하는 로깅을 구성할 수 있습니다.따라서, 그것을 넣는 거src/test/resources
이치노
주의: 구체적인 로그 설정은 클라이언트/사용자에게 맡기면 교환을 검토해야 합니다.log4j
slf4j
당신의 앱에서.
그냥 넣기만 하면 돼src/main/resources
일 경우 JAR, JAR, JAR이 있습니다.log4j.properties
파일 내에서는 로깅을 구성할 수 있는 초기 지점이 손실됩니다.
는 보통 in는는에 넣어요.src/main/resources
하다
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<targetPath>${project.build.directory}</targetPath>
<includes>
<include>log4j.properties</include>
</includes>
</resource>
</resources>
</build>
인식하기 를 클래스해야 합니다.MAVEN-assembly-plugin 을티 。할 수 이 경우 JAR의 폴더는 JAR의 JAR을 할 수 있습니다.Class-Path
하다
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>com.your-package.Main</mainClass>
</manifest>
<manifestEntries>
<Class-Path>.</Class-Path>
</manifestEntries>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id> <!-- this is used for inheritance merges -->
<phase>package</phase> <!-- bind to the packaging phase -->
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
이제 log4j.properties 파일이 JAR 파일 바로 옆에 있으며 개별적으로 구성할 수 있습니다.
응용 하려면 Eclipse를 하십시오.resources
: "Configuration" classpath "" 를 합니다.Run->Run Configurations...->Java Application->New
고르다Classpath
" ", " 를 선택합니다.Advanced
해 주세요.src/resources
디렉토리로 이동합니다.
「 마이닝 「데이터 마이닝」이라고 하는 .src/main/resources
전형적인 장소입니다.
src/main/resources/log4j.properties
: 4877src/main/java/log4j.properties
: 215
프로젝트 초기화에 사용되는 리소스는 src/main/resources 폴더에 넣는 것이 좋습니다.빌드 중에 이러한 리소스를 로드할 수 있도록 하려면 maven 프로젝트의 pom.xml에 빌드 리소스로 엔트리를 추가하면 됩니다.
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
다른 .properties 파일도 초기화에 사용되는 폴더에 보관할 수 있습니다.일부 변수를 리소스 폴더의 속성 파일에 두고 프로파일 필터 속성 파일에서 채우려는 경우 필터링이 true로 설정됩니다. 이 속성 파일은 프로파일로 설정된 src/main/filters에 유지되지만 이는 모두 다른 사용 사례입니다.일단은 무시하셔도 됩니다.
이 플러그인은 뛰어난 리소스 맵 플러그인입니다.다른 섹션도 참조할 수 있습니다.
리소스 파일을 다른 위치에 저장하는 것이 가장 좋은 솔루션이 아닌 경우:
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
<build>
예를 들어 리소스 파일(예: jaxb.properties)이 Java 클래스와 함께 패키지 내부 깊숙이 들어가는 경우가 있습니다.
src/main/resources에서 log4j.properties 또는 log4j.xml 파일을 찾을 수 없는 경우 이 PropertyConfigurator.configure("log4j.xml")를 사용합니다.
PropertyConfigurator.configure("log4j.xml");
Logger logger = LoggerFactory.getLogger(MyClass.class);
logger.error(message);
빌드 태그 내부의 pom.xml 리소스 태그에서 다음 코드를 추가합니다.따라서 리소스 태그는 pom.xml 빌드 태그 안에 있어야 합니다.
<build>
<resources>
<resource>
<directory>src/main/java/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<build/>
언급URL : https://stackoverflow.com/questions/5132389/if-using-maven-usually-you-put-log4j-properties-under-java-or-resources
'source' 카테고리의 다른 글
서버에서 내부 오류 또는 잘못된 구성이 발생하여 요청을 완료할 수 없습니다. (0) | 2022.10.14 |
---|---|
Vue에서 기본 포트를 8080에서 다른 포트로 변경할 수 있습니까? (0) | 2022.10.14 |
Rails - JavaScript 런타임을 찾을 수 없습니까? (0) | 2022.10.14 |
Windows용 XAMPP에서 PHP를 업그레이드하시겠습니까? (0) | 2022.10.14 |
mysql db를 프로그래밍 방식으로 복제하는 방법 (0) | 2022.10.14 |