Weave-Scope服务是一个用来监控docker容器、k8s等(包括宿主机)的资源使用状况的,从根本上来说,有些类似于Zabbix等监控服务,该服务式基于容器部署的,部署简单,但功能强大,美中不足的可能就是其安全方面存在一些隐患吧!(关于其安全问题,待我验证后,会解释的)关于其详细的介绍,可移步至Weave-Scope官方文档,以便详细的了解Weave-Scope服务。我将在这篇博文写下如何部
转载 2024-01-28 00:35:29
41阅读
Java语言基础看《Head First Java》到270页。小知识点:      1.对象是Java的灵魂。      2.一般把对象的变量设置为private,想使用变量必须调用我们所写的方法。      3.实例变量(对象声明的变量)有默认值,局部变量(在方法里面的变量)
转载 2024-08-02 13:46:53
27阅读
最近项目中用到了java调用linux系统下c的so动态库的需求,实现后我就来总结一波实现方式:1.java使用jni调用so库:需要自己定义native方法,编译.h文件,编写c文件,在linux上编译为so文件,巴拉巴拉。。。总之比较繁琐,而且写java的去写c,你懂得。。。2.对jni做了封装的JNA方法:将c中的类型与Java中的类型做了映射,只需要写一个类,类中的接口extends Li
一、目标除了AndroidNativeEmu我们还有一个选择 Unidbg 来实现模拟执行so,GitHub链接https://github.com/zhkl0228/unidbg特色模拟JNI调用API,以便可以调用JNI_OnLoad。支持JavaVM,JNIEnv。模拟syscalls调用。支持ARM32和ARM64。基于HookZz实现的inline hook。基于xHook实现的impo
so 文件调用随着 Android 移动安全的高速发展,不管是为了执行效率还是程序的安全性等,关键代码下沉 native 层已成为基本操作。native 层的开发就是通指的 JNI/NDK 开发,通过 JNI 可以实现 java 层和 native 层(主要是 C/C++ )的相互调用,native 层经编译后产生 so 动态链接库,so 文件具有可移植性广,执行效率高,保密性强等优点。那么问题来
本周在开发一个python业务系统时,涉及到解密过程,解密是通过调用c的so文件实现的。开发过程中,踩进了一个不大不小的坑,差点腿都没拔出来,仅以此谨记不再踩ctypes坑。1.首先我们要有一个so库,有一个待调用的方法,c语言部分实现如下:int c_dec(unsigned char* c, unsigned char* m, unsigned long long b, const unsig
c_program.c文件内容#include <stdio.h> void display(char* msg) { printf("%s\n", msg); } int add(int a, int b) { return a + b; }py_call_so.py# -*- coding: utf-8 -*- """在python中调用so文件""" from
转载 2023-06-06 16:00:30
425阅读
最近我们组里面有一个小老头,问我什么是so,我说是可执行文件。他立马去喊我导师,说救救孩子吧。 于是好好了解了一下,做了一下笔记。 C的标准库就是动态链接库,也就是说系统中所有运行的程序共享着同一个C标准库的代码段。动态库有很多优点。不给予赘述了 通俗简单描述动态库就是我们程序运行时,跑到指定位置去 ...
转载 2021-07-25 20:04:00
2240阅读
2评论
## Android调用so文件的流程 下面是Android调用so文件的整个流程: ```mermaid flowchart TD A(创建Android项目) A-->B(创建jni文件夹) B-->C(创建C/C++源文件) C-->D(配置Android.mk文件) D-->E(生成so文件) E-->F(在Java代码中加载so文件) F-->G(调用C/C++函数) ```
原创 2023-11-22 08:41:17
436阅读
# JavaScript调用so文件 ## 1. 引言 随着互联网的快速发展和技术的不断进步,JavaScript作为一种非常重要的脚本语言,广泛应用于前端开发、后端开发以及移动端开发等领域。然而,JavaScript作为一种脚本语言,其运行速度相对较慢,对于一些需要高性能的任务来说,需要调用底层的C/C++代码来提升性能。而.so文件(Shared Object)是在Linux系统上使用的共
原创 2023-10-18 10:00:00
2301阅读
将*.so文件拷贝到app\libs\armeabi文件夹下修改build.gradle文件,在buildTypes下添加sourceSets { main { jniLibs.srcDirs = ['libs'] } }在调用...
转载 2015-07-07 14:16:00
282阅读
2评论
文章目录1、简介2、先编译出一个第三方非标准so库1)android studio 新创建一个项目2) main 新创建 jni 文件夹3) 新建 .cpp 文件和 .h 实现 求和功能4)、编写 CMakeLists.txt 用来编译 cpp 文件so5)配置编译环境6)、编译第三方 非标准 库3、新项目 引用第三方 so 库1)新建 android studio 项目2)新建 java 类
转载 2023-07-31 17:16:52
2200阅读
## Java调用.so文件 在Java开发中,有时我们会遇到需要调用动态链接库(Dynamic Link Library)文件的情况,尤其是当我们需要使用一些底层的功能或者与C/C++编写的代码进行交互时。Java提供了一种简单而高效的方式来调用.so文件,本文将介绍如何在Java中调用.so文件,并提供相关的代码示例。 ### SO文件是什么? SO文件(Shared Object fi
原创 2023-07-14 11:46:37
2274阅读
# Java调用so文件的实现流程 本文将详细介绍如何在Java中调用so文件的步骤以及代码示例。Java调用so文件是通过JNI(Java Native Interface)来实现的,JNI是一种机制,允许Java代码与本地代码(C/C++等)进行交互。 ## 整体流程 下面是Java调用so文件的整体流程,可以使用表格展示: | 步骤 | 描述 | | --- | --- | | 1
原创 2023-12-07 06:15:02
673阅读
项目场景:最近项目需要开发一个新功能,需要调用c++的so文件,在实际开发过程中碰到了一些问题,记录一下。 文章目录项目场景:一、使用技术二、使用步骤1.编写一个类用于解析so文件2.项目部署3.注意事项(可能出现的错误)3.1版本不一致3.2 运行环境3.3 没有配置动态链接库地址(LD_LIBRARY_PATH)3.4 文件名3.5 函数名不正确总结 一、使用技术原本是想直接用jna的,但是我
转载 2023-09-01 06:43:02
332阅读
1. 这个帖子里面的如下部分 .so是Linux(Unix)下的动态链接库. 和.dll类似.  比如文件有: a.c, b.c, c.c  gcc -c a.c  gcc -c b.c  gcc -c c.c  gcc -shared libXXX.so a.o b.o c.o 
c++ 生成java 接口最本质的方法是通过jni 技术,jni 技术可以实现java 和c++的互相调用 那么生成so 具体用什么方法好呢? 我所知道的有四种方式 1: 写andorid 的android.mk 文件,之前在eclipse 中使用过,mk 文件就相当于Makefile 2: SWIG 技术,一个工具,c++ 语言生成各种其他语言的工具,java,c#,python 等都支持,中文
转载 2024-06-09 08:46:31
102阅读
# Docker导入SO文件 在实际开发中,我们有时候会遇到需要在Docker容器中导入SO文件的情况。这种情况可能是因为我们的应用程序依赖了某个动态链接库,而这个动态链接库并不在Docker镜像中。那么,该如何导入SO文件Docker容器中呢?接下来,我们将介绍如何在Docker容器中导入SO文件,并给出详细的代码示例。 ## 步骤一:准备SO文件 首先,我们需要准备好要导入的SO文件
原创 2024-04-15 05:25:11
83阅读
# 实现"Docker缺少so文件"解决方案 ## 介绍 作为一名经验丰富的开发者,我将会向你介绍如何解决"Docker缺少so文件"这个问题。这是一个常见的问题,特别是当我们需要在Docker容器中运行一些依赖于共享对象文件的应用程序时。 ## 整体流程 下面是解决"Docker缺少so文件"问题的整体流程,通过以下步骤,你可以轻松解决这个问题: | 步骤 | 描述 | | --- | -
原创 2024-04-08 06:30:55
156阅读
# Docker 加载 SO 文件的详解 在软件开发和运维中,Docker 已经成为一种流行的容器化技术,它能够将应用及其依赖项打包到一个标准的单位中。而在许多应用中,动态链接库(.so 文件)是必不可少的组成部分。本文将为您详细讲解如何在 Docker 中加载和使用 SO 文件,并给出相应的示例代码。 ## 什么是 SO 文件SO 文件是指“共享对象”文件,通常用于 Linux 操作系
原创 2024-08-03 10:11:19
152阅读
  • 1
  • 2
  • 3
  • 4
  • 5