2017-12-02 1 views
0

내 프로젝트에 자바 파일과 종속성을 추가 할 수 있습니다. 내가 cookies.java 원하는 파일을 호출 할 수 있으며 다음 원래 패키지 구조 내에서 실행해야 cookies.java이 개 파일이있는 폴더의 유틸리티 폴더 cookieDough 및 cookieRecipe 그들에게 전화가 수 있으며 pacakage은 INT의 net.sourceforge.cooking에 위치해 있습니다. 그래서 그것이 3 개 파일을 끝나게 것 I이 필요합니다올바른 방법은 그냥 내가 필요한 자바 파일을 추가하려고 메신저 그래서 지금, 내가 종속성으로 내 안드로이드 프로젝트에 jar 파일을 추가하는 시도했지만 일을 일부러 안드로이드 스튜디오

net.sourceforge.cooking.cookies.java 
net.sourceforge.cooking.util.cookieDough.java 
net.sourceforge.cooking.util.cookieRecipe.java 

는 내가 뭘하려고하면 cookieDough하고있는 폴더의 유틸리티 폴더 cookies.java 클래스 와 요리 폴더 안에 요리 폴더를 추가입니다 cookieRecipe 클래스 그래서 :

cooking/cookies.java 
cooking/util/cookieDough.java 
cooking/util/cookieRecipe.java 

내 주요 프로그램은 내가 만드는 을 시도

src/main/java/packagename/ 

아래 자바 폴더 withing에의 SRC, src/cooking하지만 위해도 /util/cookieDough.java을 찾기 위해 cookies.java 모두 받고 문제가 메신저 내 쿠키는 src/main/java/packagename/이고 cookies.java 또는 다른 파일을 찾습니다.

파일은 이미 추가 패키지 가져 오기 선언을 가지고 있지만 메신저 이후 나는 내가 모두 함께 패키지로 그들을 필요로하는 경우, 내가 아는 해달라고 다음을 변경해야합니다 알고 그 지역 만들기 메신저.

질문 :

내 프로젝트 구조 내에서 조리 폴더를 추가 할 수있는 권한 위치입니다

1.

2는 어떻게? 파일이 내가 util/cookieRecipe.java을 찾을 수 cookies.java을 얻는 방법을 의미한다, 서로를 인식 추가 메신저 얻을 내가

3가 어떻게을 패키지로 선언해야합니까 src/main/java/packagename/에있는 자바 클래스를 가져 와서 요리 디렉토리, 가져 오기 문에서 클래스를 찾으십시오.

주 패키지에 3 개의 Java 파일을 추가하고 모든 가져 오기 및 패키지 문을 제거하면 작동하지만 올바른 방법 (모범 사례)을 수행하는 방법을 알고 싶습니다. 내가 그 파일들을 광산과 분리시켜야한다고 가정 할 때.

지금 내가 추가하는 파일은 opensource입니다.

내가 종속성으로 내 안드로이드 프로젝트에 jar 파일을 추가하는 시도 당신

답변

0

감사하지만 무슨 일이 있었는지

그것이 "작동하지 않았다"알고에서지도 작업 didnt는? 이것은 해결되어야 할 더 중요한 질문 일 수 있으며, 질문 끝에 언급 한 "모범 사례"일 수 있습니다.

그러나 바로 그 .java 파일을 퍼팅에 대한 다른 질문에 대해, 원래의 질문이 조금 혼란 보인다

. 당신은 src/main/java을 기준으로 해당 파일의 package 문에 의해 지시 된 디렉토리에있는 모든 .java 파일을 넣어 기억합니다.

하는 예로서 귀하의 질문을 가지고, 당신은 net.sourceforge.cooking.cookies.java (즉, 그 내부에 package net.sourceforge.cooking; 문을 사용하여 디렉토리 net/sourceforge/cooking 아래 파일 이름 cookies.java가), 당신은 그것을 넣어 패키지 src/main/java 아래를 만들 수 있습니다를 추가하는 것 파일은 src/main/java/net/sourceforge/cooking/cookies.java 일 수 있음을 나타냅니다. (예,이 디렉토리는 src/main/java/packagename의 주요 소스의 원래 디렉토리를 무시합니다.) 당신은 단지 import 문을 보인다 필요한,이 질문이 들어 1.

를 질문에 대한 답변입니다 희망,

import net.sourceforge.cooking.util.cookieRecipe 

어떤 디렉토리에 있는지는 패키지 이름을 나타냅니다. 따라서 패키지 이름을 선언해야하지만 Java에서는 package 문만 사용하고 다른 선언은 필요하지 않으며 다른 구성은 필요하지 않습니다. 하나는 src/main/java/net/sourceforge/cooking입니다

그리고 질문 3은 하나 net.sourceforge.cooking, 당신은 당신이 공통 패키지와 함께 두 개의 패키지 나무를 다루는 것을 걱정하지 않아도 동일이고, 다른 하나는 packagename (또는 디렉토리에 다른 하나는 src/main/java/packagename입니다.

+0

안녕하세요, 위대한 답변을 주셔서 감사합니다. 패키지를 추가하지 않은 이유가 여기에 게시되었습니다. https://stackoverflow.com/questions/47514818/dex-error-when-i- 포함 - 항아리 - 파일 - 내 - 안드로이드 프로젝트 – Jack

+0

질문 1에 대해 내 프로젝트에서 시작 (net.sourceforge)을 자르고 그냥 요리 폴더에서 시작하고 싶었는데, 이렇게 할 수있었습니다. 당신이 설명하는 방법을 사용하여, 만약 내가 t 그것을 밖으로 잘라 또는 원래 경로 (모범 사례 질문) 함께두고 더 적절하다면, 그냥 모든 파일을 않는 net.sourceforge 않는 것이 명확하게 느낄 것입니다. – Jack

+0

또한 내가 이것에 대해 새 게시물을 열어야할지 모르겠다. 그러나 쿠킹 폴더와 유틸리티 폴더를 추가 할 때 new-> 패키지를 통해 할 수 있지만 new-> folder- > java 폴더,하지만 폴더 구성 확인란을 선택 구성 요소 창을 얻을 및 정말 그 요청을 이해하지 못합니다. 나는 그것을 올바른 방법으로 했는가? 자바 폴더 옵션은 무엇입니까? 감사! – Jack

관련 문제