Home

[Mac OS/Homebrew] 맥/맥북에서 brew 쉽게 설치하기! 패키지 관리(Package Management) 프로그램

1. What is Homebrew? 개발을 하거나 terminal/shell를 사용하다보면 프로그램을 설치하기 위해서 패키지 관리(Package Management)를 사용합니다. 패키지 관리자는 프로그램을 손쉽게 설치하는 프로그램이라고 보시면 됩니다. 일명, CLI 환경에서의 앱스토어/안드로이드 플레이스토어와 비슷한 역할을 하는 프로그램입니다. linux 에서는 주로 yum 이나 apt/apt-get 을 사용하는데요, 맥에서는 homebrew 라는 package manager를 사용합니다. Homebrew _ macOS용 패키지 관리자 에서 설치하는 방법을 확인할 수 있습니다. 2. 설치하기 $ /bi...

Read more

[Mac OS/NVM] 맥/맥북에서 NVM(nodejs version manager)으로 node 버전별 설치/관리하기

1. NVM 이 무엇인가요? nvm은 nodejs version manager의 약자입니다. 직역하면 node.js 버전 관리자인데요.시스템에 하나의 node.js 버전만 사용하지 않고, 여러가지 프로젝트를 진행하면서 여러가지 node.js 버전이 필요한 경우가 있을 것입니다. 이 때, 운영체제 시스템에 여러 버전의 node.js 를 설치하고, 사용할 버전을 쉽게 전환할 수 있게 도와주는 프로그램이라고 보시면 됩니다. 이와 비슷한 버전 관리자로는 pyenv(Python Environment), rvm(Ruby Version Manager)가 있습니다. 2. NVM 설치 방법 2.1. nvm 설치 $ brew...

Read more

[Kotlin] Parameter specified as non-null is null: method kotlinx.serialization.encoding.AbstractEncoder.encodeStringElement, parameter value java.lang.NullPointerException: Parameter specified as non-null is null: method kotlinx.serialization.encoding.AbstractEncoder.encodeStringElement, parameter value

1. Problem When i make test code on Spring boot & kotlin, i met this problem. I used fixture and that made some data class, but that fixture made problem! The problem arose because of null value. In that time, fixture makes null value on my code. How can i avoid null properties in Kotlin? Parameter specified as non-null is null: method kot...

Read more

[Spring Boot] Kotlin + Kotest / Continually 로 일정 시간 동안 반복적인 테스트 진행하기

kotest 에서 정해진 시간 내에 지속적으로 테스트를 수행하고 싶을 때가 있을 때 어떻게 하면 반복적으로 테스트를 진행할 수 있을까요? 시간을 정해놓고 반복 테스트를 진행하려면 continually 함수를 사용하면 손쉽게 테스트를 반복적으로 일정 시간 내에 진행할 수 있습니다. suspend fun <T> continually(duration: Duration, poll: Duration, f: suspend () -> T) = continually(duration, poll.fixed(), f = f) suspend fun <T> continually( duration:...

Read more

[Spring Boot] Kotlin + MongoDB / MongoRepository 데이터 조회가 안될 때 수정 및 확인 사항

1. 문제 상황 Kotlin을 이용하여 Spring Boot 프로젝트를 진행하던 도중, MongoDB를 사용하는 상황이 있었습니다. MongoDB를 더 쉽게 사용하기 위하여 MongoRepository를 사용하였는데요. 1.1. 정상 동작하지 않던 소스코드 interface PurchaseMongoRepository : MongoRepository<PurchaseMongoDocument, String> { fun findByUserIDAndPurchaseIDIn( purchaseIDs: List<String>, userID: String, ) : Li...

Read more

[소프트웨어/프로그래밍] 코딩 컨벤션 린트(lint), 린터(Linter)란? 개념 정리

[소프트웨어/프로그래밍] 코딩 컨벤션에서 린트(lint)란 무엇일까요? 린트에 대한 개념정리를 해보았습니다. 위키피디아의 정보는 아래와 같습니다. 린트(lint) 또는 린터(linter)는 소스 코드를 분석하여 프로그램 오류, 버그, 스타일 오류, 의심스러운 구조체에 표시(flag)를 달아놓기 위한 도구들을 가리킨다.[1] 이 용어는 C 언어 소스 코드를 검사하는 유닉스 유틸리티에서 기원한다 린트는 코드의 오류나 버그가 있는지 확인하고, 정해진 규칙을 잘 지키고 있는지에 대한 것들을 개발하면서 확인 및 점검을 하기 위해 사용하는 도구, 툴입니다. 린트(Lint)는 다른 이름으로 린터(Linter)라고도 ...

Read more

[AWS & Spring boot Error/Bug solve] com.amazonaws.services.kms.model.AWSKMSException / The security token included in the request is invalid. Service: AWSKMS; Status Code 400; Error Code UnrecognizedClientException

1. Problem When i use aws cli, i set configure file ~/.aws/config. I set my aws profile and region/aws_access_key. But, when i try to use aws cli, i get error like under command. There is no problem on my aws access key, but i see this problem. 2022:06:01 20:05:51.311 INFO --- [background-preinit] o.h.validator.internal.util.Version : HV00000...

Read more

[Github Blog Error/Bug solve] When jekyll-sitemap not working, try this

1. Problem I use jekyll blog on github. Someday i checked my sitemap, i confimed that there was no sitemap.xml file! I can see just 404 message. Before my jekyll blog showed sitemap when i go https://localhost:4000/sitemap.xml, but now i cannot confirm sitemap 🥲. 2. Solve 2.1. Before _config.yml ## => Plugins ###########################...

Read more

[Intellij] 현재 작업중(열려 있는) 에디터를 프로젝트 구조 탭에서 항상 확인(선택)하는 방법

Intellij에서 현재 에디터에 있는 파일이 항상 왼쪽 프로젝트 탭에서 선택되게 하고 싶은 경우가 있을 것입니다. 저 같은 경우 이 기능이 비활성화 되어 있을 때, 직접 해당 소스코드로 찾아가야되서 불편함을 느껴 이 기능을 활성화 시켰습니다. 프로젝트 구조에서 현재 파일을 어떻게 찾아야 할까요?? 방법은 매우 간단하게 아래와 같은 방법으로 해결할 수 있습니다. 1. 자동으로 확인하는 방법 : 항상 열려 있는 파일이 프로젝트에 올라올 수 있게 프로젝트 탭 상단의 오른쪽 톱니바퀴(설정버튼)을 선택한 후 항상 열려 있는 파일 선택(Select opened file or editor) 를 활성화시켜줍니다. ...

Read more

아이폰(ipados)/아이패드(ios) 크롬(Chrome)에서 번역기능 안될 때, 활성화하는 방법

구글 크롬을 사용하다보면 번역기능을 매우 자주 활용합니다. 영어로 된 문서를 볼 때, 영어를 잘하지 않으면 번역 기능은 사실 이제 필수인 것 같습니다. 이런 번역 기능을 활성화하려면 어떻게 해야 할까요? 아이폰/아이패드(ios) 크롬(Chrome)에서 번역기능 안될 때 조치하는 방법을 알아보았습니다. 위와 같이 처음에 영어 문서를 열었을 때, 번역 기능이 비활성화 되어 있어서 번역을 할 수 없었습니다. 웹사이트에서는 정상적으로 되는데 왜 막혀있는지 모르겠지만, 기능을 활성화하기 위하여 방법을 아래와 같이 찾았습니다. 먼저 … 을 눌러 메뉴를 킨 다음, 설정 버튼을 눌러줍니다. 설정 메뉴...

Read more