PersesTitan(페르) 기술블로그

[Ruby][Rubymine] 설치한 파일이 require되지 않을때 본문

Error

[Ruby][Rubymine] 설치한 파일이 require되지 않을때

PersesTitan(페르) 2022. 12. 26. 10:54

해결방법

gem install <프로젝트명>을 한뒤에 에러가 발생하지 않고 잘 설치가 됬는데도 불구하고 다음과 같은 에러가 발생했을때 해결했던 방법입니다.

cannot load such file -- a (LoadError)

Rubymine 사용시 해결 방법

Rubymine를 사용할 경우 Preferences에 들어가 줍니다.
(단축키 : mac = ⌘, , window = ctrl,)

Languages & Frameworks -> Ruby SDK and Gems에 가보게 되면 지금까지 설치한 ruby 버전들을 볼 수 있는데요.
에러가 발생했을때는 선택되어있는 버전에는 제가 설치한 gem이 존재하지 않았습니다.

Rubymine 해결

아래와 같이 제가 설치한 gem이 3.0.0에 존재한다는 것을 볼 수 있었습니다.
Rubymine는 설치가 되어 있는 버전으로 변경해주면 require가 재대로 동작하게 됩니다.

터미널 해결 방법

Gem파일이 어느 버전에 설치되어 있는지 모를때

해당 방법은 Gemfile이나 bundle이 존재할때만 찾을수 있는방법인데요.
bundle install이 성공적으로 설치되었을때 다음 명령어를 입력하게 된다면 설치된 gem들을 볼 수 있습니다.

bundle show

출력 예시

Gems included by the bundle:
  * bundler (2.4.1)
  * ruby2d (0.11.3)

이렇게 뜬다면 제가 제가 설치할려고 했던 ruby2d가 재대로 설치 된것 입니다.
여기서 다음과 같이 입력하게 되면 설치된 경로가 뜨게 됩니다.

bundle show <gem 이름>

출력 예시

/Users/PersesTitan/.rvm/gems/ruby-3.0.0/gems/ruby2d-0.11.3

출력 에시를 보면 ruby-3.0.0의 gem에 설치 되었으므로 3.0.0버전의 ruby에 설치되었다는 것을 알 수 있게 됩니다.

설치된 버전을 알았다면 방법은 간단한데 실행 루비버전을 설치된 버전으로 사용하면됩니다.