Unity 安卓构建错误:IL2cpp 需要提取的资源提取失败

C/C++ 专栏收录该内容
¥59.90 ¥99.00
171篇文章

Unity 安卓构建错误:IL2cpp 需要提取的资源提取失败

问题描述:
在 Unity 中进行安卓构建时,可能会遇到一个报错信息:“failed to extract resources needed by IL2cpp”。这个错误通常发生在将 Unity 项目构建为安卓应用程序时,而 IL2cpp 则是 Unity 用于将 C# 代码编译为本地代码的工具。

错误原因:
这个报错信息意味着 IL2cpp 无法成功提取其所需的资源,造成构建过程失败。导致此问题的可能原因有以下几个方面:

  1. 资源文件丢失或损坏:IL2cpp 需要访问一些资源文件才能成功执行编译过程。如果这些资源文件在构建过程中丢失或损坏,就会导致构建失败。

  2. 构建设置错误:在 Unity 的构建设置中,可能存在一些错误的配置,导致 IL2cpp 无法正确访问所需的资源文件。

解决方案:
针对上述可能的原因,我们提供以下解决方案,帮助您解决这个问题:

  1. 检查资源文件:确保项目中的所有资源文件都存在且没有损坏。特别是在添加新资源后,应该通过重新导入或检查资源的链接关系来确保其完整性。

  2. 清理和重新构建:尝试清理 Unity 项目并重新构建安卓应用程序。通过在 Unity 菜单栏中选择 “Build” -> “Clean”,然后再进行构建,以确保所有的资源文件都会被正确地重新编译和提取。

  3. 检查构建设置:仔细检查 Unity 的构建设置,确保没有错误的配置。尤其是在与 AndroidManifest.xml 相关的设置中,例如权限

Unity IL2CPP构建链缺失:VR安卓打包ToolchainNotFoundException全解析 在Unity开发中,IL2CPP作为将C#代码转换为C++并进行AOT编译的核心后端,是提升应用性能与代码安全性的关键技术。其工作原理在于通过静态编译生成平台原生代码,尤其对Android平台VR应用开发至关重要,能显著优化执行效率与内存管理。然而,构建过程中常因环境配置问题导致工具链缺失,引发“ToolchainNotFoundException”错误,直接阻碍项目打包流程。本文聚焦VR开发场景,针对该问题提供系统性解决方案,涵盖Android NDK配置、环境变量修复及版本兼容性排查,帮助开发者快速恢复 阅读详情

相关推荐

Unity Android IL2CPP构建失败:BuildIl2CppTask错误排查与解决方案

在移动应用开发中,跨平台编译是连接高级语言与原生性能的关键桥梁。IL2CPP作为Unity引擎的核心技术,通过将C#字节码转换为C++代码,再编译为原生机器码,实现了代码的安全性与执行效率的平衡。其技术价值在于解决了Mono后端在部分平台上的性能瓶颈和兼容性问题,使Unity应用能够在Android等移动设备上获得接近原生的运行性能。在实际工程实践中,当Unity项目导出到Android Studio进行深度定制时,IL2CPP构建过程常因环境配置冲突而中断,特别是在涉及NDK版本管理、Gradle构建系统

keke1314520的博客 298

Unity2021-2023安卓打包实战:IL2CPP与Gradle版本兼容性避坑指南

本文详细解析了Unity 2021-2023版本中使用IL2CPP脚本后端打包安卓应用时,如何解决Gradle版本兼容性等核心难题。文章提供了从环境准备(JDK、NDK、Gradle版本对齐)、导出工程配置、IL2CPP特有编译问题到命令行打包集成的完整避坑指南,帮助开发者高效构建稳定的安卓应用。

tgb3456789的博客 1244

Unity安卓打包全攻略:从环境配置到自动化构建的完整解决方案

在移动应用开发中,跨平台构建与部署是连接开发与发布的关键环节,其核心在于解决环境配置、依赖管理与平台兼容性问题。Unity作为主流的游戏开发引擎,其安卓打包流程涉及Android SDK、Gradle构建系统与IL2CPP编译技术的深度集成,这些技术共同决定了应用的性能、稳定性和发布效率。对于开发者而言,掌握系统化的排错方法不仅能提升开发效率,更是工程实践能力的体现。本文聚焦于Unity安卓打包过程中的高频痛点,如Gradle依赖冲突、IL2CPP代码兼容性及资源格式优化,通过解析环境配置原理与构建流程,提

483

Unity跨平台打包实战:Android/iOS构建错误排查与自动化部署指南

跨平台开发是现代游戏与应用开发的核心需求,它允许开发者使用同一套代码库构建面向多个操作系统(如Android和iOS)的应用。其原理在于通过统一的开发框架(如Unity引擎)抽象底层平台差异,在构建时针对不同平台进行代码转换与资源适配。这项技术的核心价值在于大幅提升开发效率、降低维护成本,并确保应用在不同设备上的一致体验。在实际工程实践中,跨平台打包常面临构建工具链配置、原生代码集成、资源管理等多重挑战,尤其在处理Gradle版本冲突、NDK路径配置、证书签名等具体场景时,需要系统性的排查方法。本文聚焦于U

weixin_33787529的博客 500

Unity安卓开发环境搭建:手动配置SDK/NDK与镜像源解决模块下载失败

在移动应用开发中,Android SDK和NDK是构建安卓应用的核心工具链,它们提供了编译、调试和打包所需的底层库与命令行工具。其工作原理在于为Unity等游戏引擎或开发框架提供与安卓系统API交互的桥梁,并通过Gradle等构建系统管理依赖。对于国内开发者而言,直接访问Google官方服务器下载这些组件常因网络限制导致失败,严重影响开发效率。此时,技术价值体现在通过使用国内镜像源手动配置环境,能确保开发工具链的完整与稳定。这一实践在Unity引擎的安卓平台发布、跨平台游戏开发及持续集成流水线等场景中尤为重

weixin_34025151的博客 328

Unity构建流程深度解析:从资源处理到IL2CPP的完整工程化体系

在游戏开发与软件工程领域,构建流程是将源代码和资源转换为可执行产物的核心环节,其原理涉及编译、链接、优化等底层技术。理解构建流程的技术价值在于能够主动控制软件性能、包体大小与平台兼容性,尤其在移动端和跨平台应用中至关重要。通过资源依赖分析、代码编译优化和原生代码转换,开发者可以显著提升应用的启动速度和运行效率。在Unity引擎中,这一流程具体体现为从资源导入、脚本编译到IL2CPP转换的完整链路,其中IL2CPP技术通过将托管代码转换为C++并编译为原生机器码,大幅提升了执行性能与安全性。同时,构建流程中的

weixin_34248023的博客 369

Unity IL2CPP打包错误排查与性能优化全攻略

在Unity移动开发中,脚本后端的选择直接影响应用性能与代码安全。IL2CPP作为将C#中间语言转换为C++代码的编译技术,通过AOT(预先编译)机制显著提升运行效率,尤其适用于iOS/Android平台的高性能需求场景。其技术原理在于将托管代码静态编译为原生机器码,避免了JIT编译的开销,同时增强代码混淆保护。然而,这一优势也带来了构建环境的复杂性,常见的“IL2CPP not installed”错误往往源于环境配置缺失或路径设置问题。实际开发中,开发者需系统掌握编辑器模块安装、NDK工具链配置及项目构

weixin_30235225的博客 407

Unity IL2CPP打包失败:全面诊断与解决方案指南

在游戏开发与跨平台应用构建中,代码编译与转换是核心环节。Unity引擎的IL2CPP技术通过将C#中间语言(CIL)预先编译(AOT)为C++代码,再生成原生机器码,旨在提升运行时性能与代码安全性。这一技术价值在于它能显著优化移动端与主机平台的执行效率,并增强代码混淆能力。然而,其复杂的静态转换过程对构建环境提出了严苛要求,涉及编译器工具链、系统权限、网络依赖与项目配置等多个层面,这正是开发者在Android、iOS等平台打包时频繁遭遇构建流程中断的深层原因。本文聚焦于IL2CPP转换引擎在构建阶段无法正常

weixin_31130435的博客 343

Unity IL2CPP编译环境手动配置全攻略:从原理到实战

在现代游戏开发中,脚本后端技术是影响项目性能与跨平台兼容性的核心环节。IL2CPP作为Unity引擎中取代传统Mono的先进脚本后端,其工作原理是将C#代码转换为C++代码,再通过目标平台的原生编译器生成机器码,从而带来显著的性能提升和更好的内存控制。这项技术的价值在于为高性能游戏、移动端应用及WebGL项目提供了稳定可靠的底层支持。在实际应用场景中,开发者常因网络环境、自动化构建服务器部署或环境配置问题,需要手动搭建IL2CPP编译环境。本文聚焦于解决Unity项目构建时因缺失IL2CPP编译环境导致的常

dgoh41514的博客 434

AssetRipper:Unity资源逆向提取原理、实战与高级应用指南

在Unity开发中,资源序列化与打包是核心流程,它将游戏资产转换为紧凑的二进制格式嵌入可执行文件。理解其原理有助于进行性能优化、故障排查和资源管理。AssetRipper作为一款开源逆向工程工具,其技术价值在于能够解析这些序列化数据,将模型、贴图、Shader等资源逆向导出为标准格式,重建为可编辑的Unity项目。这一过程对于资源抢救、技术研究、安全审计及学习借鉴至关重要。在实际应用场景中,开发者常面临从已丢失源码的旧项目或编译后的程序中恢复资源的挑战,例如分析“unity assetbundle打包策略”

weixin_30684743的博客 1045

Unity Android构建全攻略:从环境配置到疑难排查

Android应用构建是一个涉及多工具链协同的系统工程,其核心在于理解构建系统(如Gradle)的工作原理与组件间的依赖关系。构建系统通过自动化编译、链接和打包流程,将源代码和资源转换为可部署的应用程序包(APK或AAB),其技术价值在于提升开发效率、确保跨平台一致性并优化应用性能。在游戏开发领域,特别是使用Unity引擎时,构建过程常面临环境配置、依赖冲突和平台兼容性等挑战。针对这些痛点,本文聚焦于Unity Android构建中的高频问题,系统梳理了从环境配置(JDK、SDK、NDK、Gradle)验证

weixin_34062469的博客 535

解决Unity安卓编译错误: IL2CPP需要的资源提取失败

其中一个常见的问题是,当我们尝试将游戏导出为Android应用程序时,可能会遇到一个名为"Failed to extract resources needed by IL2CPP"的错误。当我们使用Unity的IL2CPP编译器将游戏导出为Android应用程序时,IL2CPP编译器会尝试提取特定的资源文件以生成可执行文件。然而,有时由于某些原因,IL2CPP编译器无法成功提取所需的资源文件,从而导致编译错误。请注意,在更新Unity或IL2CPP之前,务必备份项目,以防止意外情况发生。

techDM的博客 4157

Il2CppDumper-v4.2.3

最新的li2Cpp。把libil2cpp.so,global-metadata.dat跟程序放在一起,双击运行,可以选择Manual模式需要手动输入两个参数的offset。

ResourcesExtract

ResourcesExtract 网上找到的 汉化过的 .exe.dll.col.ocx中有用资源的资源 可以提取ico、avi、光标等。

电子产品设计中EFT防护的关键技术与实践

本文深入探讨了电子产品设计中EFT(快速瞬变脉冲群)防护的关键技术与实践。文章从EFT干扰的原理入手,系统阐述了通过优化PCB布局与地平面设计、构建电源与信号端口滤波防护电路、精选核心器件以及实施软件容错策略,来构建多层次、系统性的抗干扰防线,助力产品稳定通过严苛的电磁兼容测试。

e4f5g6h的博客 786

OPC DCOM详细配置方法 - 不关防火墙不换登陆用户

1. 前言   OPC DCOM的设置是实现跨网络OPC通信的基础,现有的一些OPC DCOM配置教程虽然讲解了如何配置DCOM,但没有讲清楚为什么要这么做,而且各个教程涉及的配置方法也不尽相同。   为了彻底搞清楚OPC DCOM的配置过程,我重新做了两台机器的系统,一台是Windows 7 32位,一台是Windows 10 64位,并且重零开始完整的测试了正常运行OPC DCOM所需的最少的...

steventian72的博客 3万+

LangGraph实战:用Plan-and-Execute模式5步搭建智能问答机器人(附Tavily搜索集成)

本文详细介绍了如何利用LangGraph的Plan-and-Execute模式,通过规划、执行、动态调整三个核心阶段,构建一个能够处理复杂多步骤问题的智能问答机器人。文章提供了从环境配置、状态管理到核心节点(规划、执行、重新规划)实现的完整实战指南,并集成了Tavily搜索工具,展示了如何将智能任务规划应用于实际信息查询场景。

weixin_29258297的博客 341

Docker 安装 CentOS7

本文主要介绍了docker 下安装centos7。访问 CentOS 镜像库地址:https://hub.docker.com/_/centos?tab=tags&page=1。可以通过 Sort by 查看其他版本的 CentOS 。默认是最新版本 centos:latest 。 使用以下命令来查看是否已安装了 centos7: 启动centos容器,并把docker上centos的22端口映射到本机60001端口(端口号可以自己指定) 3、进入到Centos容器 4.安装ssh服务和网络必须软件

折腾java的博客 1万+

英飞凌TLF35584 SBC实战:手把手教你配置WDG看门狗与ERR监控(基于AUTOSAR架构)

本文详细介绍了基于AUTOSAR架构的英飞凌TLF35584 SBC芯片WDG看门狗与ERR监控功能的配置方法。通过硬件平台搭建、寄存器级配置、AUTOSAR模块集成及诊断策略优化,帮助开发者快速掌握关键配置技巧,提升嵌入式系统的安全性和可靠性。

weixin_30256901的博客 477

使用扫频信号测量房间脉冲响应

脉冲响应的测量

liuderong0的博客 1765

ROS四旋翼无人机快速上手指南(4):阿木实验室PX4功能包飞行控制分析与讲解(重点章节)

成就更好的自己 这一章详细讲解一下阿木实验室(AMOV)的开源项目px4_command功能包,此功能包通过mavlink协议直接控制烧录px4固件的自驾仪,还融合了来自各个传感器的位姿,距离等信息,此外,功能包提供的接口向上对接应用层算法级的程序例如SLAM,kfc目标检测引导,路径规划等算法,因此,在整个无人机控制中起到了承上启下至关重要的作用。 用到的文件及工具包链接如下: AMOV实验室源码如下: https://gitee.com/theroadofengineers/px4_comman

The Road of Engineer 6171

机器人在果园内行巡检仿真(2D雷达、realsense相机)

DiffBot是一种具有两个轮子的自主差动驱动机器人。它的主要处理单元是一个运行Ubuntu Mate 20.04和ROS 1 (ROS Noetic)中间件的Raspberry pi4b。该存储库包含ROS驱动包、真实机器人的ROS控制硬件接口和模拟DiffBot的配置。修改配置文件orchard_world.launch。

如果想成为中心,那么就到中心去吧。 1312

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

上一篇: 使用OpenCV库加载图像时出现undefined reference错误的解决方法
下一篇: C语言中结构体的用法
普通网友
博客等级 码龄3年 140粉丝 557原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值