pingfangx / TranslatorX

JetBrains 系列软件汉化包 关键字: Android Studio 3.5 汉化包 CLion 2019.3 汉化包 DataGrip 2019.3 汉化包 GoLand 2019.3 汉化包 IntelliJ IDEA 2019.3 汉化包 PhpStorm 2019.3 汉化包 PyCharm 2019.3 汉化包 Rider 2019.3 汉化包 RubyMine 2019.3 汉化包 WebStorm 2019.3 汉化包
https://www.pingfangx.com/xx/translation
4.58k stars 616 forks source link

[已解决]请问在Linux系统中,如何汉化AndroidStudio #18

Closed cnfczn closed 6 years ago

cnfczn commented 6 years ago

目前下载了最新版(3.1)的汉化文件(jar) 找到了resources_en.jar的所在目录 /opt/android-studio/lib/resources_en.jar

mv /path/of/resources_cn.jar /opt/android-studio/lib/resources_cn.jar 或者 mv /path/of/resources_cn.jar /opt/android-studio/lib/resources_cn_AndroidStudio-3.1-r2.jar 都没有效果

mv /path/of/resources_cn.jar /opt/android-studio/lib/resources_en.jar

异常如下: Internal error. Please report to https://code.google.com/p/android/issues

java.lang.RuntimeException: java.util.MissingResourceException: Can't find bundle for base name messages.VfsBundle, locale en_US at com.intellij.idea.IdeaApplication.run(IdeaApplication.java:213) at com.intellij.idea.MainImpl$1.lambda$null$0(MainImpl.java:49) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:346) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) Caused by: java.util.MissingResourceException: Can't find bundle for base name messages.VfsBundle, locale en_US at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1573) at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1396) at java.util.ResourceBundle.getBundle(ResourceBundle.java:1091) at com.intellij.AbstractBundle.getResourceBundle(AbstractBundle.java:89) at com.intellij.AbstractBundle.getBundle(AbstractBundle.java:65) at com.intellij.AbstractBundle.getMessage(AbstractBundle.java:59) at com.intellij.openapi.vfs.VfsBundle.message(VfsBundle.java:30) at com.intellij.openapi.vfs.newvfs.RefreshQueueImpl.(RefreshQueueImpl.java:43) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.picocontainer.defaults.InstantiatingComponentAdapter.newInstance(InstantiatingComponentAdapter.java:193) at com.intellij.util.pico.CachingConstructorInjectionComponentAdapter.doGetComponentInstance(CachingConstructorInjectionComponentAdapter.java:103) at com.intellij.util.pico.CachingConstructorInjectionComponentAdapter.instantiateGuarded(CachingConstructorInjectionComponentAdapter.java:80) at com.intellij.util.pico.CachingConstructorInjectionComponentAdapter.getComponentInstance(CachingConstructorInjectionComponentAdapter.java:63) at com.intellij.openapi.components.impl.ServiceManagerImpl$MyComponentAdapter.getComponentInstance(ServiceManagerImpl.java:220) at com.intellij.util.pico.DefaultPicoContainer.getLocalInstance(DefaultPicoContainer.java:239) at com.intellij.util.pico.DefaultPicoContainer.getComponentInstance(DefaultPicoContainer.java:206) at com.intellij.openapi.components.ServiceManager.doGetService(ServiceManager.java:49) at com.intellij.openapi.components.ServiceManager.getService(ServiceManager.java:39) at com.intellij.openapi.vfs.newvfs.RefreshQueue.getInstance(RefreshQueue.java:32) at com.intellij.openapi.vfs.impl.local.LocalFileSystemBase.refreshFiles(LocalFileSystemBase.java:252) at com.intellij.openapi.vfs.VfsUtil.markDirtyAndRefresh(VfsUtil.java:550) at com.intellij.configurationStore.ApplicationStoreImpl$setPath$1.invoke(ApplicationStoreImpl.kt:57) at com.intellij.configurationStore.ApplicationStoreImpl$setPath$1.invoke(ApplicationStoreImpl.kt:40) at com.intellij.openapi.application.ActionsKt$invokeAndWaitIfNeed$2.run(actions.kt:55) at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:653) at com.intellij.openapi.application.ActionsKt.invokeAndWaitIfNeed(actions.kt:55) at com.intellij.openapi.application.ActionsKt.invokeAndWaitIfNeed$default(actions.kt:40) at com.intellij.configurationStore.ApplicationStoreImpl.setPath(ApplicationStoreImpl.kt:54) at com.intellij.openapi.application.impl.ApplicationImpl.lambda$load$8(ApplicationImpl.java:422) at com.intellij.openapi.components.impl.ComponentManagerImpl.init(ComponentManagerImpl.java:101) at com.intellij.openapi.application.impl.ApplicationImpl.load(ApplicationImpl.java:406) at com.intellij.openapi.application.impl.ApplicationImpl.load(ApplicationImpl.java:392) at com.intellij.idea.IdeaApplication.run(IdeaApplication.java:206) ... 16 more

pingfangx commented 6 years ago

你好,输出显示你的操作环境是 en_US,即英文美国,所以 zh_CN 的汉化包是无效的。 请下载与汉化包对应的 AndroidStudio 3.1 版本,然后使用 resources_en.jar 的汉化包,版本不对应 resources_en.jar 是无法使用。 或者你可以将 resources_en.jar 汉化包中的内容,解压到原 lib 中的 resources_en.jar 的包中。

cnfczn commented 6 years ago

多谢帮忙,最近在忙,一直没有时间回复. 刚刚试了下 mv /path/of/resources_cn_*.jar /opt/android-studio/lib/ LC_ALL=zh_CN.utf-8 android-studio 可以正确显示汉化内容,关闭问题了