inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

외부 패키지가 연결이 되지 않는다고 나옵니다.

371

DaHab

작성한 질문수 1

0

질문은 총 2개입니다. 이 밑에 있는 사진을 참고해서 질문을 봐주시면 될 것 같습니다.

감사하겠습니다.

2.PNG

 

1. MemoryMemberRepository이 외부 패키지에서 연결이 되지 않는다고 하는데 이 말이 무엇인지 이해가 되지 않습니다. 이 문제를 어떻게 해결하면 좋을까요..?

1.PNG

3.PNG<왼쪽 오류>

hello.hellospring.repository.MemoryMemberRepository is not public in hello.hellospring.repository; cannot be accessed from outside package

 

<오른쪽 오류>

java: hello.hellospring.repository.MemoryMemberRepository is not public in hello.hellospring.repository; cannot be accessed from outside package

 

(혹시 몰라 코드도 함께 올립니다.)

package hello.hellospring.service;

import hello.hellospring.domain.Member;
import hello.hellospring.repository.MemoryMemberRepository;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import static org.assertj.core.api.Assertions.assertThat;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertThrows;

class MemberServiceTest {
    MemberService memberService;
    MemoryMemberRepository memberRepository;

    @BeforeEach
    public void beforeEach() {
        memberRepository = new MemoryMemberRepository();
        memberService = new MemberService(memberRepositorypository);
    }

    @AfterEach
    public void afterEach() {
        memberRepository.clearStore();
    }

    @Test
    public void 회원가입() throws Exception {
        //Given
        Member member = new Member();
        member.setName("hello");
        //When
        Long saveId = memberService.join(member);
        //Then
        Member findMember = memberRepository. findById(saveId).get();
        assertEquals(member.getName(), findMember.getName());
    }

    @Test
    public void 중복_회원_예외() throws Exception {
        //Given
        Member member1 = new Member();
        member1.setName("spring");
        Member member2 = new Member();
        member2.setName("spring");
        //When
        memberService.join(member1);
        IllegalStateException e = assertThrows(IllegalStateException.class,() -> memberService.join(member2));//예외가 발생해야 한다.
        assertThat(e.getMessage()).isEqualTo("이미 존재하는 회원입니다.");
    }
}

 

  1. memberRepository를 입력했는데 밑에 빨간줄이 뜹니다. 혹시 무엇인가 import를 해주지 않은 것인지 판단되어 ctrl+space를 눌러도 클릭되는 것은 없습니다. 그럼 왜 빨간줄이 떠있는 것인지 궁금합니다.

2.PNG

java mvc MVC spring spring-boot

답변 1

0

OMG

안녕하세요. DaHab님, 공식 서포터즈 OMG입니다.
전체 코드를 본게 아니여서 확실하진 않지만

MemoryMemberRepositoryTest 의 문제가 있지 않나 생각합니다.

테스트 패키지에 MemoryMemberRepository 부분도 이상하구요.

image
확인해보시고 해결이 안될 경우 댓글남겨주세요.

MemoryMemberRepository와

MemoryMemberRepositoryTest 클래스를 새로 만들어서 확인해주세요


감사합니다.

..

0

78

2

Unused property.....

0

102

2

project JDK is misconfigured

0

133

2

외부 API의 ID 타입(String/UUID)과 내부 도메인의 ID 타입(Long)이 불일치할 때의 설계 정석

0

83

2

단위/통합 테스트 버전충돌 문제

0

91

2

❗️springboot 4.0.2 버전 aspectj dependency 설정❗️

0

230

1

왜 컨트롤러는 변한게 없는데 새로 만든 html 파일이 뜨나요?

0

104

2

윈도우 build test오류 질문

1

103

2

테스트 관련 공부에 대한 조언을 얻고 싶습니다

0

101

2

테스트 실행 시 에러 질문

0

292

1

name을 통한 비교와 객체를 통한 비교

0

77

1

빌드 후 libs 없음

1

130

1

윈도우 gradlew.bat 에러

0

168

1

@PostMapping("/members/new")가 동작하지 않습니다

0

90

1

java static class와 kotlin class

0

79

1

스프링 DB연결

0

127

1

소요 시간

0

87

2

ddl.sql에 빨간 밑줄

1

102

2

welcome page 에러

0

183

3

잘 모르겠습니다.

0

164

2

fail을 똑같이 쳤는데 오류가 발생해요

0

158

2

index.html Welcome page

0

125

1

프로젝트 gradle-groovy ?

0

372

1

테스트코드 메서드명 한글

0

204

2