2021. 12. 26. 22:45ㆍJava
no main manifest attribute, in xxx.jar
java -jar xxx.jar 수행시, main 파일을 못 찾아서 문제 발생
https://dongjuppp.tistory.com/87
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>xxx.xxx.xxx</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
Error: Unable to initialize main class xxx.xxx.xxx
Caused by: java.lang.NoClassDefFoundError: org/quartz/SchedulerException
jar 파일이 실행하는데, 필요한 라이브러리들이 포함안되어서 에러 발생
# 방법1
https://modesty101.tistory.com/167
해당 Project에서 오른쪽 마우스 클릭
Export > Java > Runnable JAR file
Launch configuration : main이 있는 클래스 선택
Export destination : 생성하고자 하는 jar 파일의 위치와 이름
Package required libraries into generated JAR 체크
# 방법2
https://macdev.tistory.com/174
pom.xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>hys.processKill.ProcessKill</mainClass>
<addClasspath>true</addClasspath>
<classpathPrefix>libs/</classpathPrefix>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.5.1</version>
<executions> <execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<includeScope>runtime</includeScope>
<outputDirectory>${project.build.directory}/libs/</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
'<>'operator is not allowed for source level 1.7
Map<String, String> map = new HashMap<>(); 수행시 에러 발생JRE System Library가 자꾸 1.5로 바뀌고, 인식됨pom.xml에서 강제로 버전 정의
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>17</source>
<target>17</target>
</configuration>
</plugin>
</plugins>
</build>
Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.2:test (default-test) on project NbminerLog: No tests were executed! (Set -DfailIfNoTests=false to ignore this error.)
pom.xml에 plugin을 넣는 것으로는 해결이 안됨
# Run > Run Configurations...
JRE > VM Arguments에 아래 내용 추가
-DfailIfNoTests=false
javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
https://sagittariusof85s.tistory.com/158
tls 버전 문제로 통신이 안됨 : 버전에 맞춰서 아래 코드 추가하면 해결됨
System.setProperty("https.protocols", "TLSv1.2");
java.text.ParseException: Unexpected character: "
application.properties에서 변수값을 읽어올때 "가 있어서 에러 발생
"를 제거해야 함
# 수정전
quarts.schedule="0 0/5 * * * ?"
# 수정후
quarts.schedule=0 0/5 * * * ?
'Java' 카테고리의 다른 글
java Tip (0) | 2022.02.02 |
---|---|
pom.xml 셋팅 (0) | 2022.01.31 |
maven 에러 (0) | 2022.01.30 |
java 설치 (0) | 2022.01.30 |
크롤링(crawling) (0) | 2021.12.26 |