반응형

라이브러리에 JUnit을 추가 이후에 테스트를 실행했더니 다음과 같은 에러가 발생했습니다.

가장 기본적인 테스트 코드인데도 불구하고... 에러가 발생을 했네요.

java.lang.NoClassDefFoundError: org/junit/runner/manipulation/Filter

 

에러가 발생한 이유는 환경설정에 문제가 있습니다.

JUnit을 추가하실 때 Modulepath에 추가하셨기 때문에 문제가 발생합니다.

환경설정 들어가는 방법은 프로젝트 우클릭 -> Properties -> Java Build Path -> Libraries 입니다.

 

Modulepath가 아닌 Classpath에 JUnit을 추가해주세요.

 

위 사진 처럼 Classpath에 추가를 해주시면 문제가 해결되겠습니다.

감사합니다.

반응형
반응형

실행 중인 컨테이너 중지

sudo docker stop $(sudo docker ps -aq)

 

실행 중인 컨테이너를 제외한 모든 컨테이너 삭제

docker container prune

 

모든 이미지 삭제

docker image prune

 

도커 이미지, 컨테이너, 볼륨, 네트워크 등 모든 도커 리소스 일괄 삭제

docker system prune

 

반응형
반응형

현재 우분투에 자바 8 버전이 설치가 되어 있습니다.

자바 6 ,7, 9 버전도 필요로 하여 각각 설치를 하고 자바 버전을 어떻게 변경하는지 살펴보도록 하겠습니다.

 

자바 6 버전 (bin 파일)

1. 바이너리 파일 다운로드

https://www.oracle.com/java/technologies/javase-java-archive-javase6-downloads.html#jdk-6u45-oth-JPR

 

2. 권한변경

현재 실행권이 없어 권한 변경

 

sudo chmod +x jdk-6u45-linux-x64.bin(파일이름)

 

권한 변경 후 확인을 하면 실행권이 주어진 걸 보실 수 있습니다.

3. 실행

 

./jdk-6u45-linux-x64.bin

 

자바 7 버전(tar 파일)

1. tar 파일 다운로드

https://www.oracle.com/java/technologies/javase/javase7-archive-downloads.html#jdk-7u80-oth-JPR

 

2. 압축 해제

sudo tar xvf jdk-7u80-linux-x64.tar.gz

 

위의 5, 6 버전을 실행하고 나면 각각의 디렉터리가 만들어집니다. (아래 9 버전까지 압축을 풀어주면 9 버전까지 존재합니다.)

 

자바 9 버전(tar 파일)

1. tar 파일 다운로드

http://jdk.java.net/archive/

 

2. 압축해제

sudo tar xvf openjdk-9.0.4_linux-x64_bin.tar.gz

 

 

각각의 자바 버전 세팅

1. 각각의 디렉터리를 우분투 jvm관리를 해주는 디렉터리로 복사를 해줍니다.

sudo cp -r jdk1.6.0_45/ /usr/lib/jvm/java-6-amd64
sudo cp -r jdk1.7.0_80/ /usr/lib/jvm/java-7-amd64
sudo cp -r jdk-9.0.4/ /usr/lib/jvm/java-9-openjdk-amd64

2. 이제는 아래 명령어를 통해서 설치를 진행해주세요

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-6-amd64/bin/java 6
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-6-amd64/bin/javac 6
sudo update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/java-6-amd64/bin/javaws 6

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-7-amd64/bin/java 7
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-7-amd64/bin/javac 7
sudo update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/java-7-amd64/bin/javaws 7

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-9-openjdk-amd64/bin/java 9
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-9-openjdk-amd64/bin/javac 9
sudo update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/java-9-openjdk-amd64/bin/javaws 9

끝에 숫자는 겹치지 않는 임의 숫자를 입력해주시면 되겠습니다.

 

3. 아래 명령어를 통해서 자바 버전을 변경해주실 수 있습니다.

sudo update-alternatives --config javac
sudo update-alternatives --config java
sudo update-alternatives --config javws

 

4. 마지막으로 자바 버전 확인

java -version

명령어를 통해서 버전을 확인해주시면 되겠습니다.

감사합니다.

반응형
반응형

 

테스트 코드 실행 중 다음과 같은 에러가 발생했습니다.

 

error: variable name not initialized in the default constructor

 

 

그레이들 버전이 맞지 않아 발생하는 에러였습니다.

그레이들 버전을 4.x으로 낮춰주면서 이상 없이 문제를 해결 했습니다.

./gradlew wrapper --gradle-version 4.10.2

 

반응형
반응형

알고리즘 공부를 시작하기 위해서 읽은 책입니다.

책 이름은 모두의 알고리즘 with 파이썬 입니다.

프로그래밍 언어는 책 제목처럼 파이썬 언어를 활용합니다.

총 18문제를 풀어봅니다. 내용은 알고리즘 문제를 풀기 위한 필수 내용들로 다음과 같습니다.

기초내용 / 재귀 함수 / 탐색과 정렬 / 자료구조(스택, 큐, 딕셔너리, 그래프)로 구성되어 있습니다.

각각의 내용들을 학습하고 학습한 내용을 기반으로 문제들을 풀어봅니다.

책 내용은 다른 알고리즘 책들에 비해서 어렵지 않습니다. 처음 알고리즘 시작을 하시는 분이라면 물론 어려우실 수도 있습니다. 하지만 위의 책 내용은 알고리즘 문제를 풀기 위한 필수적인 내용들입니다. 내용들을 숙지하고 반복하고 또 반복하셔야 됩니다. 그렇게 될 때 책 이외의 다른 문제들도 풀어 나갈 수 있습니다.

 

* 알고리즘 공부 시작법

알고리즘 공부를 시작하겠다고 마음먹고 많은 이들이 범하는 오류가 있습니다.

알고리즘을 공부한다면서 정말 두꺼운 책부터 보고 있는 것입니다. 또 그런 책들은 처음 공부할 때 내용이 쉽지도 않습니다. 두꺼운 책을 펴고 50 페이지, 70 페이지 보고 나서 더 이상 안 열어 봅니다. 그렇게 알고리즘을 공부하겠다는 마음가짐이 사라집니다.

그렇기에 처음 알고리즘 공부를 하신다면 위의 책처럼 내용이 조금 쉽고(다른 책에 비해서입니다) 끝까지 보고 정리를 할 수 있는 책을 추천드립니다.

 

물론 책만 봐서도 절대 안 됩니다. 알고리즘 문제는 실전입니다. 기반 지식을 쌓았으면 이제는 활용할 차례입니다.

이런 책의 내용들을 모르고 다른 사이트의 알고리즘 문제들을 풀어 나간다면 접근조차도 못하는 경우가 생깁니다. 각각의 파트를 숙지하고 나면 이 지식기반으로 문제들을 접근할 수 있는 힘이 생깁니다. 그리고 고민하고 코드를 작성하시면서 문제를 풀어 나가시면 되겠습니다.

이런 힘을 키우기 위해서는 책 한 권 끝까지 보는건 정말 필수입니다. 알고리즘 기본서적을 한권 골라서 문제해결 지식 기반을 쌓고 알고리즘 문제들을 풀어 나가시면 좋겠습니다.

 

* 정리

1. 쉬운 알고리즘 책을 한권 선택

2. 책 내용을 끝가지 보고 충분히 숙지한다 (개념 / 코드)

3. 적절한 알고리즘 사이트를 찾는다

4. 쉬운 문제부터 알고리즘 문제를 풀어 본다

5. 문제를 접근할 때는 우리가 학습한 내용을 기반으로 접근을 하며 풀어 나가자
ex) 아, 이문제는 해시 테이블로 문제를 풀어보면 되겠구나!!

반응형

+ Recent posts