小编Jay*_*den的帖子

RenderThread与信号6(SIGABRT)的本机崩溃

更新!

见下文

情况

我们的应用程序难以诊断问题.当我们尝试使用intent让相机应用程序返回图片时,我们会收到一个低级别的崩溃情况,我们不确定如何调试.这是在Android 6.0和Android 7.0上的Nexus 5x设备上发生的.

以下是监视器的堆栈跟踪:

10-17 11:59:41.208 9925-9925/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
10-17 11:59:41.208 9925-9925/? A/DEBUG: Build fingerprint: 'google/bullhead/bullhead:7.0/NBD90W/3239497:user/release-keys'
10-17 11:59:41.208 9925-9925/? A/DEBUG: Revision: 'rev_1.0'
10-17 11:59:41.208 9925-9925/? A/DEBUG: ABI: 'arm64'
10-17 11:59:41.208 9925-9925/? A/DEBUG: pid: 5791, tid: 6054, name: RenderThread  >>> com.ourapp <<<
10-17 11:59:41.209 9925-9925/? A/DEBUG: signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
10-17 11:59:41.230 9925-9925/? A/DEBUG: Abort message: 'Leaked …
Run Code Online (Sandbox Code Playgroud)

crash android

27
推荐指数
1
解决办法
3959
查看次数

内存泄漏停止或重新部署 - Spring 3.1.2,Hibernate 4.1.0,Spring Data-Jpa 1.1.0,Tomcat 7.0.30

编辑1

2013/06/07 - 虽然我仍然遇到这个问题,但它仍然只会影响重新部署.自最初的问题发布以来,我们已经升级了一些东西.这是我们的新版本(仍然展示了手头的问题):

<properties>
    <!-- Persistence and Validation-->
    <hibernate.version>4.1.0.Final</hibernate.version>
    <hibernate.jpa.version>1.0.1.Final</hibernate.jpa.version>
    <javax.validation.version>1.0.0.GA</javax.validation.version>
    <querydsl.version>2.2.5</querydsl.version>
    <spring.jpa.version>1.2.0.RELEASE</spring.jpa.version>
    <spring.ldap.version>1.3.1.RELEASE</spring.ldap.version>

    <!-- Spring and Logging -->
    <spring.version>3.1.3.RELEASE</spring.version>
    <spring.security.version>3.1.3.RELEASE</spring.security.version>
    <slf4j.version>1.6.4</slf4j.version>
    <jackson.version>1.9.9</jackson.version>

    <cglib.version>3.0</cglib.version>
</properties>
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,它基本上只是一个Spring Framework bump和Spring(Data)Jpa bump.我们也升级到Tomcat 7.0.39.CGLIB(之前未提及但被包括在内)也被提升至3.0

以下是我试图解决手头问题但没有运气的一些事情:

  1. 更改了我们的POM(使用Maven)将我们的数据库驱动程序设置为提供其范围
  2. 为了包含jul-to-slf4j而增加了对SLF4J的依赖性,因为它提到可能存在潜在泄漏
  3. 试过Classload Leak Protector(https://github.com/mjiderhamn/classloader-leak-prevention).这看起来很有效(因为它在取消部署/关闭期间通过列出大量正在清理的东西来发送我的日志)但是在使用VisualVM之后,我的perm gen空间没有被回收.这可能对其他人有用......
  4. 试图通过使用Maven的依赖关系分析工具列出我的POM中的所有排除项(在Maven Projects窗口的In IntelliJ中,您可以右键单击依赖关系并选择'Show Dependencies'和Shift-Delete所有红色依赖关系).这没有用,但它将我的WAR文件大小减少了大约MB左右.
  5. 根据Spring(https://jira.springsource.org/browse/SPR-9274)中未解决的错误报告,重构JPA Persistence配置如下(注意注释):

    @Bean
    public PlatformTransactionManager transactionManager(EntityManagerFactory entityManagerFactory) { // Important line (notice entityManagerFactory is 'provided/autowired'
        return new JpaTransactionManager(entityManagerFactory);
    }
    
    @Bean
    public EntityManagerFactory getEntityManagerFactory(DataSource dataSource) { // Important line (notice dataSource is 'provided/autowired'
    
        LocalContainerEntityManagerFactoryBean factoryBean …
    Run Code Online (Sandbox Code Playgroud)

java spring hibernate spring-mvc tomcat7

14
推荐指数
1
解决办法
9752
查看次数

标签 统计

android ×1

crash ×1

hibernate ×1

java ×1

spring ×1

spring-mvc ×1

tomcat7 ×1