다음 스크립트는 Ubuntu에서는 작동하지만 Mac에서는 작동하지 않습니다. 왜? 여기에서도 작동하도록 하려면 어떻게 편집해야 합니까?
#!/bin/sh
v=1.1
test_file="Test10.java"
jar_file="dp4j-$v-jar-with-dependencies.jar"
curl -O "http://repo2.maven.org/maven2/com/dp4j/dp4j/$v/$jar_file"
# Start
cat > $test_file << __EOF__
class T10 {
private static void p(int i, Double d, String... s){}
}
public class Test10{
@com.dp4j.InjectReflection
public void t() {
T10.p(1,new Double(2),"hello", "reflection");
}
}
__EOF__
cat $test_file
cmd="javac -Averbose=true -cp $jar_file $test_file"
echo $cmd
$cmd
Mac에서 출력:
$ sudo ./TESTDRIVE
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 341k 100 341k 0 0 1516k 0 --:--:-- --:--:-- --:--:-- 3248k
class T10 {
private static void p(int i, Double d, String... s){}
}
public class Test10{
@com.dp4j.InjectReflection
public void t() {
T10.p(1,new Double(2),"hello", "reflection");
}
}
javac -Averbose=true -cp dp4j-1.1-jar-with-dependencies.jar Test10.java
error: error reading dp4j-1.1-jar-with-dependencies.jar; cannot read zip file
...
$ md5 dp4j-1.1-jar-with-dependent.jar MD5 (dp4j-1.1-jar-with-dependent.jar) = eb04d0d357fd861ac414fde7d3530119
답변1
답변2
실제로 .jar 파일이 있는지 확인하셨나요? 많은 다운로드 링크가 파일이 실제로 있는 위치로 자동으로 리디렉션되므로 Location: ...
CURL이 따르지 않는 리디렉션의 몇 바이트만 다운로드할 수 있습니다.
텍스트 편집기에서 .jar 파일을 열고 결과를 확인하십시오. 실제 .jar은 "PK"로 시작해야 합니다(.zip 파일이므로).