2015-12-02 3 views
9

После обновления до Android Studio 2.0 Preview я вижу следующее исключение при попытке построить проектClassNotFoundException для FileOpUtils с Android Studio 2.0 Preview

Error:Internal error: (java.lang.ClassNotFoundException) com.android.repository.io.FileOpUtils 
java.lang.ClassNotFoundException: com.android.repository.io.FileOpUtils 
at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:425) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:358) 
at com.android.sdklib.repository.local.LocalSdk.<init>(LocalSdk.java:182) 
at com.android.sdklib.repository.local.LocalSdk.<init>(LocalSdk.java:191) 
at org.jetbrains.jps.android.AndroidBuildDataCache.getSdk(AndroidBuildDataCache.java:145) 
at org.jetbrains.jps.android.AndroidJpsUtil.getAndroidTarget(AndroidJpsUtil.java:403) 
at org.jetbrains.jps.android.AndroidJpsUtil.getAndroidPlatform(AndroidJpsUtil.java:478) 
at org.jetbrains.jps.android.builder.AndroidPreDexBuildTarget.computeRootDescriptors(AndroidPreDexBuildTarget.java:110) 
at org.jetbrains.jps.builders.impl.BuildRootIndexImpl.addRoots(BuildRootIndexImpl.java:72) 
at org.jetbrains.jps.builders.impl.BuildRootIndexImpl.<init>(BuildRootIndexImpl.java:62) 
at org.jetbrains.jps.cmdline.BuildRunner.load(BuildRunner.java:83) 
at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:266) 
at org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:125) 
at org.jetbrains.jps.cmdline.BuildMain$MyMessageHandler$1.run(BuildMain.java:232) 
at org.jetbrains.jps.service.impl.SharedThreadPoolImpl$1.run(SharedThreadPoolImpl.java:42) 
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) 
at java.util.concurrent.FutureTask.run(FutureTask.java:262) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
at java.lang.Thread.run(Thread.java:744) 

Это известный issue но любые комментарии есть «я тоже ».

Кто-нибудь мог обходить это?

Update

Эта проблема была решена в 2.0 Preview 4.

ответ

3

workaround был размещен в комментарии к вопросу подачи.

На моем Mac я выполнил следующие действия в терминале:

  1. vi /Applications/Android\ Studio.app/Contents/plugins/android/lib/android.jar

  2. META-INF/plugin.xml Выберите для редактирования.

  3. Добавить ;repository.jar в атрибут classpath в строке <compileServer.plugin classpath="sdklib.jar;common.jar;jarutils.jar;layoutlib-api.jar;manifest-merger.jar"/> и сохранить изменения.

  4. Open Android Студия

Как уже отмечался в комментариях, вам могут понадобиться применить этот обходной путь снова после дальнейшего обновления до Android Studio, если проблема все еще не решена.

Предупреждение

После применения вышеперечисленного изменения Android-студия больше не в состоянии применить обновление исправлений. Вы получите предупреждение, подобное тому, которое указано в вопросе this. Кажется, единственное решение - это переустановка. Согласно комментариям к проблеме, проблема все еще существует в последней сборке.

+0

Hi, 1 вопрос. Как вы выбираете файл plugin.xml из .jar для редактирования? Я вижу это в файле .jar, но я не могу его отредактировать. – Loebre

+0

@Loebre vi представляет список файлов в банке. Затем вы можете выбрать файл и отредактировать/сохранить непосредственно в файл jar. – Mark

Смежные вопросы