반응형

개발/개발관련 84

[개발관련] 인텔리제이 빌드 도구 없이 라이브러리 다운로드 (Maven Repository, JUnit)

프로젝트 구조가 웹프로젝트와 다르게 조금 특이하다. 메이븐이나 그레들 빌드도구의 프로젝트 구조를 따르지 않는 자바 프로젝트이다. ( src/main/java 구조가 아니다) 메이븐이나 그레들 프로젝트에서는 src/test 디렉터리를 기본 Test 경로로 인식을 하는데 이 프로젝트는 src 디렉터리를 바로 소스 경로로 인식하기 때문에 src 하위에 Test 디렉터리를 설정할 수 없다. 1. 메이븐이나 그레들의 프로젝트 구조를 따르지 않음 2. 빌드도구를 사용하지 않아 라이브러리를 직접 라이브러리 디렉터리에 추가해주어야 함 빌드도구의 의존을 통하지 않고 라이브러리를 추가하려면 jar 파일을 다운로드하여 라이브러리 기본 디렉터리에 추가해주어야 한다. 하지만 인텔리제이의 기능을 사용하면 빌드 도구를 통하지 않더..

개발/개발관련 2023.08.16

[개발관련] 공인IP로 어떻게 사설 네트워크 안의 특정 서버에 요청하는지 - 포트포워딩

공인IP의 특정 port 요청을 사설 네트워크 안의 특정 호스트(사설IP) 로 향하게 하는 것이 포트포워딩이다. 공인 IP를 사용하는 공유기 등에서 포트포워딩을 설정하면 외부에서 내부망(사설 네트워크 등) 의 특정 호스트(서버)에 접근이 가능하다. 라우터에서 포트 포워딩을 설정하는 방법 (이미지 포함) - wikiHow 이 위키하우 글을 읽고 라우터의 특정한 포트를 열어서 애플리케이션이 네트워크에 접근할 수 있도록 해보자. 특정한 포트를 열면 게임, 서버, BitTorrent 클라이언트, 다른 애플리케이션이 포트 ko.wikihow.com

개발/개발관련 2023.08.10

[개발관련] 정렬 프로그램

https://github.com/mbk1991/Algorithm_DataStructure/tree/master/Algorithm_DataStructure%2Fsrc%2Fmain%2Fjava%2FAlgorithm%2Fsort 정렬 알고리즘을 공부 중 알고리즘과 배열 생성 방법을 선택하여 정렬하는 프로그램을 만들어보았다. 여러가지 정렬 알고리즘을 공부하는 김에 객체 지향적으로 만들어보고자 하였다. 개선할 점이 아주 많은 코드이다. 정렬 알고리즘들이 잘 동작하지만 우선 속도가 끔찍하게 느리다. 많은 이유가 있겠지만 불필요한 비교 및 오토박싱 등으로 과도한 객체 생성을 하고 있는 것으로 보인다. 성능 개선을 위하여 기본 타입을 사용하는 등 여러모로 개선이 많이 필요하다. 자바 기본기와 이펙티브 자바 서적을 읽..

개발/개발관련 2023.08.04

[개발관련] No Test Roots Found

JUnit 테스트 코드를 생성하고자 하는 클래스에 Alt + Enter로 Create Test를 누르자 위와 같은 팝업이 나타났다. Test 루트를 인식하지 못해 발생한 문제였다.build.gradle에 소스디렉터리에 대한 설정을 넣은 것과 관련이 있어 이를 수정해 보았다. test의 srcDirs 가 'test'인 것을 'src/test/java'로 변경하였다. (사실 sourceSets 설정을 하지 않으면 해결된다. Gradle에서는 기본적으로 인식하는 프로젝트 레이아웃이 정해져 있기 때문이다.. src/main/java, src/test/java... 등) build.gradle sourceSets { main { java { srcDirs = ['src/main/java'] } } test { j..

개발/개발관련 2023.08.03

[개발관련] Package name 'main.java.Algorithm. ... ' does not correspond to the file path 'Algorithm. ...'

Gradle 프로젝트로 전환 후 인코딩 및 소스 디렉터리 변경에 의한 Package 선언 문제가 발생하였다. Package name 'main.java.Algorithm. ... ' does not correspond to the file path 'Algorithm....' 정렬 알고리즘 공부 차원에서 코딩 중 테스트 코드나 써볼까 하고 JUnit 라이브러리를 추가하고자 하였다. 빌드 도구로 의존을 추가하는 것이 간편하다고 생각하여 build.gradle 파일을 추가하여 Gradle 프로젝트로 변경하였더니 제목과 같은 문제가 발생하였다. Gradle 프로젝트 변경 후 인코딩 관련 다른 문제도 발생하였었는데 다음과 같은 조치로 해결하였다. ------------------------------------..

개발/개발관련 2023.08.03
반응형