工程a引用工程b,b是一个库,结果点击a里引用的b库里的类,跳不到源码,跳到jar里边去了。
我记得我最开始是可以跳过去了,就对比了下,问题就是最早我工程a和库b都是放在workspace下,
后来这两个都svn上下来,我都放在别的目录里,用的时候就是通过import导入到workspace,没有勾选copy的,所以workspace里也只是一个引用而已。
现在重新导入,把他们都copy到workspace下应该会好的吧
提示设置
http://blog.csdn.net/tonghuawanli/article/details/53021673
查看jdk源码
https://jingyan.baidu.com/article/0f5fb09904ef056d8334ea23.html
如何查看support v4,v7之类的源码?
https://blog.csdn.net/djl461260911/article/details/41488205
查看某个类都在哪里用到
点击类的文件,右键,选择Reference,弹框选择,一般选择project吧,看自己的情况的,如果不是库文件,也就自己的project会用到吧。 点完project可能会出现两种情况。
第一种,要搜索的这个类没有内部类,这时候就会直接进行搜索了。
第二种,这个类里有内部类,那么会出现一个弹框,让你选择一个类的。
日志不显示
有时候eclipse和studio打开2个,就会出现问题,关闭studio以后eclipse也没日志,首先我们看下eclipse的console模块,可以看下它有没有在重试。如果没有就拔掉数据线重插。还是没有。。
点击eclipse上方的菜单window----》show window----->other..-------->有个叫device的,打开,然后就可以看到这个窗口了,里边会显示活动的设备以及进程的,自己点下要debug的进程名字即可。
没啥更新了下sdk,又出问题了
上周没事更新了下sdk,弄了个最新的28的,这些天也没用ecilpse,今天要运行工程,发现挂了,如下提示
[2018-08-17 09:46:41 - Dex Loader] Failed to load E:\charlie\adt-bundle-windows-x86_64-20140702\sdk\build-tools\28.0.1\lib\dx.jar
[2018-08-17 09:46:41 - SmartPhone] Unknown error: Unable to build: the file dx.jar was not loaded from the SDK folder!
百度答案 https://blog.csdn.net/qq_32224139/article/details/69525946
把提示错误的那个目录build-tools\28.0.1\lib下的dx.jar删了,从其他老的版本下复制一个过来即可。都不用重启就好了。
aidl又挂了
我前一分钟还好好的运行了几次,然后打开一个布局文件有错误,它报错了。我就clean一下,这下好了。一堆aild的错误出来了,难道又是因为我更新的原因?
refusing to generate code from aidl file defining parcelable
我把最新的build-tools下的28.0.1目录删了,完事重启eclipse,clean下好了。
eclipse已经被android淘汰好几年了,如果继续用eclipse,那么sdk用个老的版本,23左右的就行了,之后就别更新了。
我们这是14年的老工程,牵扯太多,10多个版本,老大们都不想迁移,怕问题太多。就只能继续用这eclipse开发了。累的一比啊
打包又挂了
前一分钟打包还是好的,下一分钟打包就挂了。。
一直提示Conversion to Dalvik format failed with error 1
https://blog.csdn.net/aminfo/article/details/7909921
搜到帖子还没用,反正clean下好了,
修改默认签名
https://blog.csdn.net/u014702653/article/details/51549039
方法数超了
加了2个jar包以后,方法数超标了,运行不起来了
[2018-09-20 14:20:11 - Dex Loader] Unable to execute dex: Cannot merge new index 66993 into a non-jumbo instruction!
[2018-09-20 14:20:11 - xxx] Conversion to Dalvik format failed: Unable to execute dex: Cannot merge new index 66993 into a non-jumbo instruction!
网上找了个方法,在project.properties里加一句,我自己这里没问题,同事那里就不行,没效果。
dex.disable.merger=true
eclipse 的terminal 显示空白
平时在这里输入命令,也不用打开cmd,比较方便,换了个测试机发现这玩意成空白了,我以为坏了,后来才发现,换了设备得点击右上角那个电脑图标,弹框点击确认就好了
如果要执行windows上的cmd那种,选local那个就行。
第一个git bash貌似也是个命令窗口,打命令也可以,好像是用来同步代码之类的,没研究。
nstallation error: INSTALL_FAILED_UPDATE_INCOMPATIBLE
安装失败,这个是签名不一样导致的
上边有修改默认签名的图
一般几个人开发大家用同一个默认签名,这样换测试机以后也不用卸载,可以直接覆盖安装
,换完签名以后,把工程clean一下,以后你没改代码,它可能使用的还是老的apk,用的还是老的签名,clean一下让它重新生成
放假前eclipse还好好的,放完假回来就打不开了
日志如下
!ENTRY org.eclipse.osgi 4 0 2018-10-10 08:58:45.620
!MESSAGE Application error
!STACK 1
java.lang.NoClassDefFoundError: org/eclipse/core/resources/IContainer
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:653)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:590)
at org.eclipse.equinox.launcher.Main.run(Main.java:1499)
Caused by: java.lang.ClassNotFoundException: An error occurred while automatically activating bundle org.eclipse.core.resources (128).
at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:112)
at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:529)
at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:328)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:368)
at org.eclipse.osgi.internal.loader.sources.SingleSourcePackage.loadClass(SingleSourcePackage.java:36)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:442)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:395)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:387)
at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 13 more
Caused by: org.osgi.framework.BundleException: Exception in org.eclipse.core.resources.ResourcesPlugin.start() of bundle org.eclipse.core.resources.
at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:800)
at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:729)
at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:933)
at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:309)
at org.eclipse.osgi.container.Module.doStart(Module.java:581)
at org.eclipse.osgi.container.Module.start(Module.java:449)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:468)
at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:103)
... 22 more
Caused by: org.eclipse.core.internal.resources.ResourceException: Problems reading project tree.
at org.eclipse.core.internal.resources.WorkspaceTreeReader_2.readTree(WorkspaceTreeReader_2.java:129)
at org.eclipse.core.internal.resources.SaveManager.restoreTree(SaveManager.java:1056)
at org.eclipse.core.internal.resources.SaveManager.restore(SaveManager.java:719)
at org.eclipse.core.internal.resources.SaveManager.startup(SaveManager.java:1587)
at org.eclipse.core.internal.resources.Workspace.startup(Workspace.java:2399)
at org.eclipse.core.internal.resources.Workspace.open(Workspace.java:2156)
at org.eclipse.core.resources.ResourcesPlugin.start(ResourcesPlugin.java:467)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:779)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:772)
... 29 more
Caused by: java.io.IOException: Unknown format.
at org.eclipse.core.internal.watson.ElementTreeReader.getReader(ElementTreeReader.java:78)
at org.eclipse.core.internal.watson.ElementTreeReader.readDelta(ElementTreeReader.java:87)
at org.eclipse.core.internal.watson.ElementTreeReaderImpl_1.readDeltaChain(ElementTreeReaderImpl_1.java:86)
at org.eclipse.core.internal.watson.ElementTreeReader.readDeltaChain(ElementTreeReader.java:112)
at org.eclipse.core.internal.resources.WorkspaceTreeReader_1.readTrees(WorkspaceTreeReader_1.java:237)
at org.eclipse.core.internal.resources.WorkspaceTreeReader_2.readTree(WorkspaceTreeReader_2.java:108)
... 39 more
解决方法:删除指定的工作目录下.metadata/.plugins的文件夹下所有文件,然后重起MyEclipse!故障原因:jdk1.6的路径改为的新的1.8的路径,原java_home路径发生改变,因此不能正常启动。保留插件配置的地址在.metadata/.plugins,删除该目录即可。
原文:https://blog.csdn.net/seeyouc/article/details/53573850?utm_source=copy
后来发现不需要删除整个目录,整个删除以后就跟新安装的eclipse一样,啥配置都没了。
只要删除日志里提示的找不到的文件的目录即可,如下目录删掉。删完打开配置还在,不过空间里的工程都不见了。我靠
org.eclipse.core.resources
最后又测试了下,删除org.eclipse.core.resources.root 目录下的文件就可以启动了,不过和上边一样,启动以后工程下是空的,还得一个一个导入以前的工程,烦人,不知道谁有好的解决办法。
同一个workspace导入工程的2个分支版本的问题
有个工程A,引用一个库B, 现在我在workspace里导入了 trunk的版本,正常运行
完事我又导入了branch的版本 ,改个名字A1,B1
我A1引用的B1,右键A1的属性,看android下的library,显示引用的B1,没啥问题,可实际点击A1的代码,你发现跳到 B里去了,而不是B1.
问题在哪里。这时候打开A1的build path,下图,你会发现project下边那个名字是B,而不是B1,
把B删了完事add选择B1,即可
升级版本错误
https://blog.csdn.net/hejjunlin/article/details/24196143
Installation error: INSTALL_FAILED_CONFLICTING_PROVIDER
Please check logcat output for more details.
Launch canceled!
错误来源:同名Provider引起的,因为要做测试,所以修改了下包名安装另外一个apk,所以authorities是一样,删了已安装的apk,或者改下authorities即可
<provider android:name="android.support.v4.content.FileProvider"
android:authorities="com.xxx.xxx.fileProvider"
android:exported="false"
android:grantUriPermissions="true">