JRE를 사용하여 Windows에서 문자열을 읽을 때 EOF 발생

7576 단어 leiningen

묘사

JRE7에서 실행할 때 정상적으로 작동하며 JRE7을 만들어서 JAR을 배치할 수 있습니다.JRE6에서 실행할 때 작동하지 않음(실행, 응답 등):
라인'main'clojure에서 이상이 발생했습니다.lang.LispReader$ReaderException:java.lang.RuntimeException:문자열을 읽을 때 EOF
이것은 문제입니다. JRE7 javac로 JRE6를 만들 수 있는 JAR을 만드는 것은 항상 가능하지 않기 때문입니다. (프로젝트.clj에 javac 옵션이 있지만.)
2.1.0과 이전 버전에서는 이 문제가 없습니다.
나의 현재 해결 방안은 두 개의 라인이다.bat 파일:
레인박쥐
LEIN\U 버전 = 2.1.0 설정
레인박쥐
LEIN VERSION=2.1.2

토론 #1

를 설정하면 됩니까
- 한 줄이 아닌 전체 스택 추적 게시
- 왜 JDK 7로 JDK 6를 노리는 게 항상 가능하지 않은지 설명해 줘요.Windows 7에 제한이 있는지 모름

토론 #2

:
$lein7 repl
라인'main'clojure에서 이상이 발생했습니다.lang.LispReader$ReaderException:java.낭여
ntimeException: 문자열을 읽을 때 EOF
clojure에 있습니다.랑 리스프레드.읽기(LispReader.java:215)
clojure에 있습니다.핵심 $read입니다.호출
clojure에 있습니다.핵심 $read입니다.호출
clojure에 있습니다.기본 $eval opt 입니다.호출
clojure에 있습니다.main$initialize.호출
clojure에 있습니다.기본 $script opt 입니다.호출
clojure에 있습니다.main$main.doInvoke(main.clj:426)
clojure에 있습니다.랑 레스트fn.호출(RestFn.java:3894)
clojure에 있습니다.lang.Var.invoke(Var.java:513)
clojure에 있습니다.lang.AFn.applyToHelper(AFn.java:410)
clojure에 있습니다.lang.Var.applyTo(Var.java:518)
clojure에 있습니다.매인.main(main.java:37)
원인:java.lang.RuntimeException:문자열을 읽을 때 EOF
clojure에 있습니다.lang.Util.runtimeException(Util.java:156)
clojure에 있습니다.lang.LispReader$StringReader.invoke(LispReader.java:453)
clojure에 있습니다.랑 리스프레드.readDelimitedList(LispReader.java:1126)
clojure에 있습니다.lang.LispReader$ListReader.invoke(LispReader.java:962)
clojure에 있습니다.랑 리스프레드.readDelimitedList(LispReader.java:1126)
clojure에 있습니다.lang.LispReader$ListReader.invoke(LispReader.java:962)
clojure에 있습니다.랑 리스프레드.readDelimitedList(LispReader.java:1126)
clojure에 있습니다.lang.LispReader$ListReader.invoke(LispReader.java:962)
clojure에 있습니다.랑 리스프레드.readDelimitedList(LispReader.java:1126)
clojure에 있습니다.lang.LispReader$ListReader.invoke(LispReader.java:962)
clojure에 있습니다.랑 리스프레드.readDelimitedList(LispReader.java:1126)
clojure에 있습니다.lang.LispReader$ListReader.invoke(LispReader.java:962)
clojure에 있습니다.랑 리스프레드.읽기(LispReader.java:180)
... 그리고 11개.
라인'thread-1'clojure에서 이상이 발생했습니다.lang.exceptionInfo: 하위 프로세스에 장애가 발생했습니다.
xit 코드 1}
clojure에 있습니다.핵심 $ex 정보입니다.호출
레닌 뿌리에 있어요.핵심견적 가격은 2654달러입니다.호출(eval.clj:213)
clojure에 있습니다.랑, 토벤.호출(MultiFn.java:231)
레닌 뿌리에 있어요.핵심eval$eval in 항목입니다.호출(eval.clj:283)
레닌 뿌리에 있어요.repl$start 서버.호출
레닌 뿌리에 있어요.repl$server$fn__6110.호출 (clj:173)
clojure에 있습니다.lang.AFn.applyToHelper(AFn.java:159)
clojure에 있습니다.lang.AFn.applyTo(AFn.java:151)
clojure에 있습니다.핵심 달러 적용.호출
clojure에 있습니다.core$귀속 성을 가지고 있습니다.doInvoke(core.clj:1788)
clojure에 있습니다.랑 레스트fn.호출(RestFn.java:425)
clojure에 있습니다.lang.AFn.applyToHelper(AFn.java:163)
clojure에 있습니다.랑 레스트fn.applyTo(RestFn.java:132)
clojure에 있습니다.핵심 달러 적용.호출
clojure에 있습니다.코어 $bound fn STAR u$fn u4102.doInvoke(core.clj:1810)
clojure에 있습니다.랑 레스트fn.호출(RestFn.java:397)
clojure에 있습니다.lang.AFn.실행(AFn.java:24)
발톱에 있네.명주실.실행(Thread.java:662)
1.6에서 실행되지 않는 1.7에서 생성된 코드는 1.7에서 스윙을 변경했기 때문에 1.7에서 컴파일된 스윙 응용 프로그램에 오류가 발생합니다.보이다http://docs.oracle.com/javase/7/docs/api/java/awt/Window.Type.html1.7에 1.6에 포함되지 않은 새로운 매거진은 1.7 컴파일 코드에서 인용됩니다.1.7과 1.6 사이의 비호환성은 다음과 같습니다.
http://www.oracle.com/technetwork/java/javase/compatibility-417013.html#incompatibilities

토론 #셋

project.clj는 어떻게 생겼니?

토론 #4

(defproject qcloader“1.0.1”
: description "수정:설명 작성"
:url“http://example.com/FIXME"
: 라이센스 {: 이름 "Eclipse 공용 라이센스"
:url“http://www.eclipse.org/legal/epl-v10.html"}
:javac options[“-target”“1.6”“-source”“1.6”]
: 의존 항목 [[org.clojure/clojure "1.5.1"]
[org.clojure/java.jdbc“0.2.3”]
[com.oracle/ojdbc6“11.2.0.2.0”]
[clojure csv“1.3.2”]
[org.apache.poi/poi“3.8”]
[org.apache.poi/poi-ooxml“3.8”]
['1.4.2'만나요]
: 주 qcloader입니다.코어

토론 #5

나는 윈도에서도 이 점을 보았다. (모든 시스템에서 마찬가지다. 일반적인 cmd 셸, Cygwin,Git Bash) 설령 새로운 프로젝트에서라도.
적어도 나에게 이것은 번지점프 임무에 국한되지 않는다. lein run -m foo.core 벙어리처럼 더러운 주fn은 같은 실수를 초래할 수 있다.
나에게 있어서 해결 방법(cygwin & cmd에 대해 나는 Git Bash의 yak shave를 완성한 적이 없다)은 내가 JDK를 실행하는 것이지 JRE가 아니라는 것을 확보하는 것이다.나는 이 과정이 상당히 무겁고 Windows 도구 체인에 익숙하지 않다는 것을 발견했다.한번 해보기를 기대하고 있습니다.https://bitbucket.org/djpowell/leiningen-win-installer다음에 나는 윈도우의 물건을 테스트할 것이다.
그러나 도대체 어떤 세부 사항이 이런 상황을 초래했는지 모르겠다.

토론 #6

추가 정보: 최신 JDK 사용(내 예는 JDK-7u17-windows-i586)M-x nrepl-jack-in 출발이 좋았다.그래서 JDK를 업그레이드해서 이 문제를 해결해 줬어요.
설치하려는 JDK를 설치할 수 없는 경우 해결 방안은 다음과 같습니다.http://stackoverflow.com/questions/10891405/installing-jdk-administrator-privileges

토론 #7

나도 JDK 6과 렌 2.1.3의 Windows에서 이 점을 보았다.Lein 2.1.0으로 돌아가는 것은 나에게 매우 유용하다.
(DEFLC 프로젝트 "1.0.0-SNAPSHOT"
: "clojure 신용장"설명
: 종속성 [[org.clojure/clojure "1.5.0"]
[hiccup“1.0.3”]
[compojure“1.1.5”]
[루프/루프 부두 어댑터 "1.1.8"]
주신용장핵심
:ring{:handler lc.core/app}
:plugins[lein ring "0.8.3")

토론 #8

나도 이 문제를 해결했다.lein 2.1.0으로 어떻게 되돌려줍니까?그것의 다운로드를 찾기가 매우 어렵다.

토론 #9

@jackfoxylein upgrade 2.1.0는 당신을 위해 이 일을 해야 합니다.

토론 #10

보아하니 자바 7+가 매개 변수의 인용부호를 바꾸는 새로운 방법을 도입한 것 같다(참조http://gluck-md.blogspot.com/2012/12/jdk7-surprise.html), 이것이 차이점입니다.주인에게 고정하기;모든 Windows 테스트는 감사할 따름입니다.

토론 #11

@trptcolin이 작동하지 않은 것 같습니다
PS C:\Windows\system32>lein upgrade 2.1.0
스크립트는 E:\Documents\Scripts\lein에 있습니다.bat는 시리즈 2.1.3의 최신 버전으로 업그레이드됩니다.
계속하시겠습니까(예/아니오)?y형
최신 Leiningen 배치 스크립트를 다운로드하는 중...
파일이 하나 이동되었습니다.
승급
C:\Users\Jack.lein\self installs\leiningen-2.1.3-standalone.jar가 이미 존재합니다.삭제하고 다시 시도하십시오.
파일이 하나 이동되었습니다.
PS C:\Windows\system32>lein upgrade 2.1.0
스크립트는 E:\Documents\Scripts\lein에 있습니다.bat는 시리즈 2.1.3의 최신 버전으로 업그레이드됩니다.
계속하시겠습니까(예/아니오)?y형
최신 Leiningen 배치 스크립트를 다운로드하는 중...
파일이 하나 이동되었습니다.
승급
Leiningen 다운로드 중...
파일이 하나 이동되었습니다.
파일이 하나 이동되었습니다.
PS C:\Windows\system32>lein-v
Java 1.6.0) Java HotSpot(TM) 64비트 서버 가상 머신 기반 Leiningen 2.1.3
PS C:\Windows\system32>lein 자동 설치
C:\Users\Jack.lein\self installs\leiningen-2.1.3-standalone.jar가 이미 존재합니다.삭제하고 다시 시도하십시오.
PS C:\Windows\system32>lein 자동 설치
Leiningen 다운로드 중...
파일이 하나 이동되었습니다.
PS C:\Windows\system32>lein-v
Leiningen 2.1.3은 자바 1.6.0)41 자바 핫스팟(TM) 64비트 서버 VM

토론 #12

에서 jdk 1.6.032에서 같은 문제를 겪었다.다음으로 업그레이드:
Java 1.7.0 21 Java HotSpot(TM) 64비트 서버 가상 머신 기반 Leiningen 2.1.3
이것은 내가 그것을 고칠 수 있는 유일한 방법이다.mingw의 지도하에 운행하다.

토론 #13

기사 감사합니다.고정된 주인이야.
@jackfoxylein upgrade는 Windows에서 실행할 수 없습니다. 이것은 틀림없이 다른 버그입니다.This는 2.1.0라인이다.박쥐 각본.

토론 #14

@trptcolin-lein 업그레이드는lein(sh버전)을 사용하는MingW에서도 작동하지 않습니다.이것은 ~/bin에 쓸 권한이 없다고 불평합니다. (써야 할 때, 오래된 linshell 스크립트 파일을 삭제했기 때문입니다.)모든 권한을 확인하고 셸 (Console2) 을 관리자로 실행했지만, 여전히 불평하고 있습니다.그러나 나는 다른 문제에 주의하지 않았다.

토론 #15

lein 2.1.0으로 내려가는 방법을 찾았는데 이 모든 것이 Cygwin과 잘 어울렸다.

좋은 웹페이지 즐겨찾기