alp源码怎么打包

alp源码怎么打包,第1张

alp源码这样打包。

1、选中所需要打包的文件或者文件夹可以多选,右键添加压缩包就可以了。

2、先建立个文件夹把需要压缩的文件全部拷贝出来,直接压缩就能打包了。

qt打包可以看源代码一个是只检索cpp;h之类的源文件,另一个是只查看qml源文件,设置完了后,需要刷新一次,不然要等一小时后才会生效,刚打开Qt项目后会看到有如下提示,一直没有认真看到,今天才注意到,它支持快速打开文件,快速打开class,快速打开函数,c + 空格 + 类名: 跳转到类

m + 空格 + 函数名: 跳转到函数

f + 空格+ 文件名: 跳转到文件,文件是指项目内的文件。1.1 将QT安装目录下: “msvc2015_64/qml” 文件夹中的内容拷贝至 “test”文件夹中。

2. 同时,将Qt 安装目录中的 qml 文件夹中的内容拷贝至 test 中。

这几天工作上遇到一个问题,三方的jar包在liunx下解压不了,用gradle又能正常编译,我们的apk是在liunx下用mk进行编译的,编译的过程中需要对jar包进行解压,这样就导致编译失败。

错误信息如下:以后再遇到这个错误,可能就jar包的问题。

FAILED: /bin/bash -c "(mkdir -p out/target/common/obj/JAVA_LIBRARIES/xxx-sdk_intermediates/classes.jack.tmpjill.res ) &&(unzip -qo /home/x/xx/xxx/APK92_GNBJ_EDO/code/libs/xxx-sdk-java20171027120314.jar -d out/target/common/obj/JAVA_LIBRARIES/xxx-sdk_intermediates/classes.jack.tmpjill.res ) &&(find out/target/common/obj/JAVA_LIBRARIES/xxx-sdk_intermediates/classes.jack.tmpjill.res -iname \"*.class\" -delete ) &&(JACK_VERSION=3.36.CANDIDATE out/host/linux-x86/bin/jack @build/core/jack-default.args --verbose error -D jack.import.resource.policy=keep-first -D jack.import.type.policy=keep-first -D jack.android.min-api-level=1 --import /home/x/xx/xxx/APK92_GNBJ_EDO/code/libs/xxx-sdk-java20171027120314.jar --import-resource out/target/common/obj/JAVA_LIBRARIES/xxx-sdk_intermediates/classes.jack.tmpjill.res --output-jack out/target/common/obj/JAVA_LIBRARIES/xxx-sdk_intermediates/classes.jack ) &&(rm -rf out/target/common/obj/JAVA_LIBRARIES/xxx-sdk_intermediates/classes.jack.tmpjill.res )" warning: stripped absolute path spec from / mapname: conversion of failed ninja: build stopped: subcommand failed. build/core/ninja.mk:148: recipe for target 'ninja_wrapper' failed

解决方法:对jar包源码重新打包

解压jar包源码,注意,是带源码的jar包,如果是编译过的jar,是不能重新打包的。

步骤:

1.新建build.gradle文件,因为gradle会默认找到当前目录下的build.gradle下的文件去执行;

2.在终端执行gradle unzip,执行这个task

以下命令将这个目录 app/libs/xxx-sdk-java20171027120314.jar 下的jar包解压到了 unpacked/dist 目录。

解压之后的源码就是文件夹,重新打包的时候需要注意,包名和源码的路径名一致。现在利用Android studio进行打包。

步骤:

1.新建lib module,选择Android Libeary/Java Library

2.注意修改包名与jar包路径相同,eg:jar包解压之后的路径 dist/com/example/api ,那么为了确保新生成的jar包里的Java文件import路径相同,module的包名也要命名为 com.example.api

3.将解压之后的源码java文件复制到lib model中;

4.在 app module 下添加 lib module 依赖。这是一种取巧的方法,当你添加了lib module依赖之后,项目会重新rebuild,这个过程会将module依赖编译成jar包,存放在lib module的 build/libs 目录下,由于Android Studio版本不同,这个目录可能有有所不同,但是都在build目录下,找新的jar包就可以了。

这一部可能会报jar包找不到,或者lib module中的import失败,可能是因为lib module依赖的jar包没导入,导入之后在lib module的build.gradle里配置一下就可以了。

这个时候,其实直接用这个jar包也可以了,如果向修改jar包名字,可以执行下面的gradle命令:

想了解更多可以参考 这里

然后在项目里测试一下jar包就可以了。

重新打包之后就可以在liunx下解压了,正常编译通过。

最后记录一下mk编译的一个错误 # [ERROR: Dex writing phase: classes.dex has too many IDs. Try using multi-dex](https://stackoverflow.com/questions/45472852/error-dex-writing-phase-classes-dex-has-too-many-ids-try-using-multi-dex) 在stackoverflow上找到了解决方法。

在mk文件中添加

参考:

https://stackoverflow.com/questions/39457116/gradle-build-hanging-when-jackoptions-is-enabled-for-java-1-8

https://stackoverflow.com/questions/45472852/error-dex-writing-phase-classes-dex-has-too-many-ids-try-using-multi-dex


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7942033.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存