Web Developer Hodory

[Hexo]TravisCI로 블로그 자동 배포시 겪은 문제

한줄 요약 : theme 폴더를 레포지토리에 추가하시면됩니다.

아래의 내용은 해당 원인을 찾아가던 본인의 경험담입니다…


블로그를 직접 만드는데, 시간을 투자하는것 보다 포스팅을 하는게 더 가치 있겠다 싶어 현재 블로그를 Hexo + Github Page를 이용하여 운영하고 있습니다

기존에는 배포를 Hexo-cli를 이용하여 아래와 같은 명령어를 사용하여 배포 했습니다.

shell

$ hexo clean
$ hexo generate
$ hexo deploy

쉘에서 해당 명령어를 작성하는것 또한 귀찮아져서 package.json 파일을 이용하여,

text

/*
 * package.json
 */
{
    "scripts": {
        "deploy": "hexo clean && hexo d -g"
    }
}

해당 스크립트를 작성해서 npm deploy명령어로 배포를 하고, 소스는 별도의 레포지토리에 관리하고 있었습니다.

[Java]해당 클래스의 서비스는 어디서 주입되나요??

회사 업무중 스프링 서비스 코드 푸시를 하였습니다.

다른 팀원들에게

인터페이스를 파라미터로 정의한것은 확인하였는데, 혹시 해당 컨트롤러에 주입은 어디에서 되나요?`

라는 질문을 들었습니다.

java

@RestController
@Slf4j
@RequiredArgsConstructor
public class YourController {
    private final YourService yourService;
}

위와같이 컨트롤러가 선언되어있었습니다.(물론 예제입니다.)

[Java]@JsonProperty이 왜 동작을 안하지?

java

class anonymousDTO {
    String whatYouWant;
}

대부분 자바의 변수를 생성할때 위와 같이 CamelCase를 많이 쓰는것으로 알고있습니다…..(본인이 잘못 생각하는것일 수 있습니다.)

필자 또한 위와 같이 camelCase를 사용하였으나 API 통신 및 응답을 리턴할때에는 hyphen uppercase가 필요했습니다.

[Java]@AllArgsConstructor의 잘못된 사용

Consider defining a bean of type java.lang.String in your configuration.

스프링부트로 서비스를 개발중에 @Value 어노테이션을 이용하여 application.yml 파일에 저장해둔 환경변수에 접근하고 싶었는데, 아래와 같은 오류가 발생하였습니다.

shell

Parameter 2 of constructor in com.hodory.v1.service.MyService required a bean of type 'java.lang.String' that could not be found.

Consider defining a bean of type 'java.lang.String' in your configuration.

[JS]jQuery 없이 Selectbox에서 여러개 선택된 option의 값 추출하기

DOM을 다룰때 jQuery를 사용하면 매우 편리합니다.

물론 크로스 브라우저 이슈로도 제이쿼리를 많이 사용합니다.

하지만 DOM을 핸들링하기 위해서만 jQuery를 쓴다면, 편리함은 챙기겠지만 낭비 아닐까싶습니다.

저는 위와 같은 생각으로, 주로 DOM 핸들링에는 jQuery 의존성을 줄이고자 순수 자바스크립트를 사용하려 노력하고 있습니다.