컴파일러 란?언어를 번역한다 = 번역기 컴파일러(번역기)의 종류원시프로그램 -> 번역기 -> 목적프로그램어셈블리어 -> 어셈블러 -> 기계어고급언어 -> 컴파일러 -> 저급언어C, C++, Java …고급언어 -> 인터프리터 -> 실행결과Python, Javascript …고급언어 -> 프리프로세서 -> 고급언어Typescript … 컴파일러(Compiler) 기법번역 후 실행효율적C, C++, Java 등 인터프리터(Interpreter) 기법번역과 동시에 실행융통성Python, Javascript, LISP 등 컴파일러의 논리적 구조 6단계1. 어휘분석 (Lexical Analysis = Scan)어휘를 토큰으로 변환 의미있는..
1. Yaml 파일 property 값들이 빈으로 등록되지 않는 문제 발생build.gradle// 메인 프로젝트와 경로를 맞춰줘야 런타임 시에 정상적으로 주입이 된다sourceSets { main { resources { srcDirs = ['src/main/resources', 'buddy-wisdom-private/src/main/resources'] } }}올바른 classpath 설정 필요.application.yml 파일은 Runtime 시에 빈으로 주입되어야하기 때문에 메인 프로젝트와 경로를 맞춰줘야한다. 서브모듈 하위에 application.yml 의 위치를 기존 메인 프로젝트 Yaml 파일과 맞춰준다.그리고 메인 프로젝트의 Yaml ..
1. 프로세스 실행파일을 찾는다. tasklist | findstr "java.exe" 2. 명령어에 대해서 찾아보니 아래와 같이 예시를 보여준다. (대소문자는 상관 없다) TASKKILL /? 3. 하나씩 적용시켜본다. TASKKILL /PID 14120 TASKKILL /F 14120 두 가지 방법 모두 실패했다. 명령어를 입력하는 방식이 옳지 않다는 로그가 나온다. 4. 다시 한 번 명령어를 날려본다. TASKKILL /F /PID 14120
Retention Policy 란? 컴파일이 되었을 때, 바이트 코드(byte code)로 만들어주는 범위를 지정해주는 정책이다. 이 정책은 enum 으로 등록되어있고, 3가지의 property 를 가진다. 여기서 용어 주의 !! byte code : 클래스(.class) 파일. Java Complier 가 OS 관계 없이 실행시킬 수 있도록 변환시킨 코드. binary code : JIT Complier 가 컴퓨터가 읽을 수 있도록 변환시킨 기계코드. public enum RetentionPolicy { /** * Annotations are to be discarded by the compiler. */ SOURCE, /** * Annotations are to be recorded in the cl..