九久九
IP:
40关注数
0粉丝数
38获得的赞
工作年
编辑资料
链接我:

创作·75

全部
问答
动态
项目
学习
专栏
九久九

这个内嵌的CSS样式,实际审查元素这个CSS样式是空的,这是怎么实现的?

https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250113/2e84cb9e626974a9b12c8e2ae871ef20.png https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250113/8fde3d7cdfd4d7a531ddf1b1032858b1.png "https://elements.envato.com/sign-in" (https://link.segmentfault.com/?enc=ozTg0YsFTYEUy7SdSYqT0g%3D%3D.3YwLmZSw2iB3BB2mKBJOhhmVZ9MBaiL8jcZrCoBhPD07N7FP6kQxoW9nf4WLPjxC) 当你查看这个CSS的时候,"" 里面是什么页面,这怎么实现是,哪里能找到这个CSS文件
css
15
1
0
浏览量206
九久九

Dell R420 服务器安装 debian 12问题?

"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250107/43f6384ebfbe446fb5eac1f442deff13.png) 进到console 4看日志
0
0
0
浏览量0
九久九

element plus form动态设置校验规则无效,该如何处理?

"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250103/b6dda0c141eff3abc281cff6d95b4128.png) 请教一下,根据是否必填的变化动态设置校验规则时不起作用,应该如何处理,谢谢
12
1
0
浏览量309
九久九

python+cython+pyav 如何构建一个包含第三方动态链接库的 wheel 包?

使用 pyav,想要自己打包一个 wheel,但是发现了一些问题 "https://github.com/PyAV-Org/PyAV" (https://link.segmentfault.com/?enc=be87adRJ%2BInhMxn%2B%2BnXu1g%3D%3D.zmh9P1R1T%2F4bvbAH1aihV6cJJx61s4oSLDgwWutvf2MXV9KOyaGW7Pku7eraJrfT) 如果我直接通过 pip install av 安装 pyav,在 pyav 的路径下,会有一个 av.libs 存在 pyav 依赖的第三方动态链接库 先查看 av 的安装路径 ╰─➤ pip show av Name: av Version: 10.0.0 Summary: Pythonic bindings for FFmpeg's libraries. Home-page: https://github.com/PyAV-Org/PyAV Author: Mike Boers Author-email: pyav@mikeboers.com License: BSD Location: /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages Requires: Required-by: 可以看到和 av 相关的有三个包 ╰─➤ ll /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages | grep av drwxrwxr-x 11 pon pon 4.0K Nov 30 2022 av drwxrwxr-x 3 pon pon 4.0K Nov 30 2022 av-10.0.0.dist-info drwxrwxr-x 2 pon pon 4.0K Nov 30 2022 av.libs 在这个 av.libs 下面有一堆动态链接库 ─➤ ll av.libs total 67M drwxrwxr-x 2 pon pon 4.0K Nov 30 2022 . drwxrwxr-x 182 pon pon 12K Feb 27 2023 .. -rwxrwxr-x 1 pon pon 7.0M Nov 30 2022 libaom-e9efed4a.so.3.2.0 -rwxrwxr-x 1 pon pon 260K Nov 30 2022 libass-8499ab98.so.9.1.3 -rwxrwxr-x 1 pon pon 14M Nov 30 2022 libavcodec-8a88085f.so.59.37.100 -rwxrwxr-x 1 pon pon 120K Nov 30 2022 libavdevice-ed40abdd.so.59.7.100 -rwxrwxr-x 1 pon pon 4.3M Nov 30 2022 libavfilter-2d5314ec.so.8.44.100 -rwxrwxr-x 1 pon pon 2.6M Nov 30 2022 libavformat-20d4e1d0.so.59.27.100 -rwxrwxr-x 1 pon pon 825K Nov 30 2022 libavutil-1701948d.so.57.28.100 -rwxrwxr-x 1 pon pon 327K Nov 30 2022 libbluray-69850b93.so.2.1.2 -rwxrwxr-x 1 pon pon 1.6M Nov 30 2022 libdav1d-df61568f.so.5.1.1 -rwxrwxr-x 1 pon pon 330K Nov 30 2022 libfontconfig-99ba2620.so.1.12.0 -rwxrwxr-x 1 pon pon 701K Nov 30 2022 libfreetype-19bd6cfb.so.6.17.1 -rwxrwxr-x 1 pon pon 126K Nov 30 2022 libfribidi-baef595b.so.0.4.0 -rwxrwxr-x 1 pon pon 484K Nov 30 2022 libgmp-dbb9f291.so.10.4.1 -rwxrwxr-x 1 pon pon 2.3M Nov 30 2022 libgnutls-58994bd7.so.30.31.0 -rwxrwxr-x 1 pon pon 1.1M Nov 30 2022 libharfbuzz-d40f381a.so.0.40100.0 -rw-rw-r-- 1 pon pon 318K Nov 30 2022 libhogweed-5d799758.so.6.4 -rwxrwxr-x 1 pon pon 160K Nov 30 2022 liblzma-f3a5963b.so.5.2.5 -rwxrwxr-x 1 pon pon 408K Nov 30 2022 libmp3lame-3ecc6556.so.0.0.0 -rw-rw-r-- 1 pon pon 296K Nov 30 2022 libnettle-cb75a9d6.so.8.4 -rwxrwxr-x 1 pon pon 43K Nov 30 2022 libogg-bbd52b06.so.0.8.5 -rwxrwxr-x 1 pon pon 169K Nov 30 2022 libopencore-amrnb-393dbae2.so.0.0.3 -rwxrwxr-x 1 pon pon 81K Nov 30 2022 libopencore-amrwb-9db94aa9.so.0.0.3 -rwxrwxr-x 1 pon pon 521K Nov 30 2022 libopenjp2-0d101c52.so.2.4.0 -rwxrwxr-x 1 pon pon 363K Nov 30 2022 libopus-70bda348.so.0.8.0 -rwxrwxr-x 1 pon pon 192K Nov 30 2022 libpng16-1f529098.so.16.37.0 -rwxrwxr-x 1 pon pon 130K Nov 30 2022 libpostproc-9d3ac700.so.56.6.100 -rwxrwxr-x 1 pon pon 106K Nov 30 2022 libspeex-b6a53f7a.so.1.5.1 -rwxrwxr-x 1 pon pon 130K Nov 30 2022 libswresample-b868a3ce.so.4.7.100 -rwxrwxr-x 1 pon pon 606K Nov 30 2022 libswscale-a6aee226.so.6.7.100 -rwxrwxr-x 1 pon pon 122K Nov 30 2022 libtheoradec-f01ee89e.so.1.1.4 -rwxrwxr-x 1 pon pon 257K Nov 30 2022 libtheoraenc-276df146.so.1.1.2 -rwxrwxr-x 1 pon pon 141K Nov 30 2022 libtwolame-72d74ef7.so.0.0.0 -rwxrwxr-x 1 pon pon 1.6M Nov 30 2022 libunistring-aeeab030.so.2.1.0 -rwxrwxr-x 1 pon pon 21K Nov 30 2022 libuuid-f64cda11.so.1.3.0 -rwxrwxr-x 1 pon pon 701K Nov 30 2022 libvorbisenc-0d9d5bdf.so.2.0.12 -rwxrwxr-x 1 pon pon 239K Nov 30 2022 libvorbis-f4a9a6fd.so.0.4.9 -rwxrwxr-x 1 pon pon 2.1M Nov 30 2022 libvpx-c1705a7a.so.7.0.0 -rwxrwxr-x 1 pon pon 2.2M Nov 30 2022 libx264-2881b7ff.so.164 -rwxrwxr-x 1 pon pon 19M Nov 30 2022 libx265-d8690e8d.so.199 -rwxrwxr-x 1 pon pon 17K Nov 30 2022 libXau-00ec42fe.so.6.0.0 -rwxrwxr-x 1 pon pon 206K Nov 30 2022 libxcb-65da195c.so.1.1.0 -rwxrwxr-x 1 pon pon 26K Nov 30 2022 libxcb-shape-25c2b258.so.0.0.0 -rwxrwxr-x 1 pon pon 25K Nov 30 2022 libxcb-shm-7a199f70.so.0.0.0 -rwxrwxr-x 1 pon pon 53K Nov 30 2022 libxcb-xfixes-9be3ba6f.so.0.0.0 -rwxrwxr-x 1 pon pon 1.6M Nov 30 2022 libxml2-47a785fa.so.2.9.13 -rw-rw-r-- 1 pon pon 653K Nov 30 2022 libxvidcore-d29bca61.so.4.3 说明 pyav 是把这些第三方依赖一起打包到了 wheel 文件里面,安装一次性通过 pip 安装了 当我进入 "/home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av" 查看其中任何一个 so 文件的 ldd 信息 以 "_core.cpython-310-x86_64-linux-gnu.so" 举例, 可以看到 ldd 信息确实是指向了刚刚的 av.libs 文件夹 ─➤ ldd _core.cpython-310-x86_64-linux-gnu.so linux-vdso.so.1 (0x00007ffc21d9a000) libavformat-20d4e1d0.so.59.27.100 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libavformat-20d4e1d0.so.59.27.100 (0x00007f324ed90000) libavcodec-8a88085f.so.59.37.100 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libavcodec-8a88085f.so.59.37.100 (0x00007f324da73000) libavdevice-ed40abdd.so.59.7.100 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libavdevice-ed40abdd.so.59.7.100 (0x00007f324da54000) libavutil-1701948d.so.57.28.100 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libavutil-1701948d.so.57.28.100 (0x00007f324d876000) libavfilter-2d5314ec.so.8.44.100 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libavfilter-2d5314ec.so.8.44.100 (0x00007f324d425000) libswscale-a6aee226.so.6.7.100 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libswscale-a6aee226.so.6.7.100 (0x00007f324d382000) libswresample-b868a3ce.so.4.7.100 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libswresample-b868a3ce.so.4.7.100 (0x00007f324d360000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f324d331000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f324d13f000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f324cff0000) libxml2-47a785fa.so.2.9.13 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libxml2-47a785fa.so.2.9.13 (0x00007f324ce64000) libbluray-69850b93.so.2.1.2 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libbluray-69850b93.so.2.1.2 (0x00007f324ce0f000) libgmp-dbb9f291.so.10.4.1 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libgmp-dbb9f291.so.10.4.1 (0x00007f324cd96000) libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f324cd7a000) libgnutls-58994bd7.so.30.31.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libgnutls-58994bd7.so.30.31.0 (0x00007f324cb41000) libvpx-c1705a7a.so.7.0.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libvpx-c1705a7a.so.7.0.0 (0x00007f324c92c000) liblzma-f3a5963b.so.5.2.5 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/liblzma-f3a5963b.so.5.2.5 (0x00007f324c901000) libdav1d-df61568f.so.5.1.1 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libdav1d-df61568f.so.5.1.1 (0x00007f324c73b000) libopencore-amrwb-9db94aa9.so.0.0.3 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libopencore-amrwb-9db94aa9.so.0.0.3 (0x00007f324c725000) libaom-e9efed4a.so.3.2.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libaom-e9efed4a.so.3.2.0 (0x00007f324bfe5000) libmp3lame-3ecc6556.so.0.0.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libmp3lame-3ecc6556.so.0.0.0 (0x00007f324bf51000) libopencore-amrnb-393dbae2.so.0.0.3 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libopencore-amrnb-393dbae2.so.0.0.3 (0x00007f324bf23000) libopenjp2-0d101c52.so.2.4.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libopenjp2-0d101c52.so.2.4.0 (0x00007f324be9f000) libopus-70bda348.so.0.8.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libopus-70bda348.so.0.8.0 (0x00007f324be43000) libspeex-b6a53f7a.so.1.5.1 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libspeex-b6a53f7a.so.1.5.1 (0x00007f324be27000) libtheoraenc-276df146.so.1.1.2 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libtheoraenc-276df146.so.1.1.2 (0x00007f324bde5000) libtheoradec-f01ee89e.so.1.1.4 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libtheoradec-f01ee89e.so.1.1.4 (0x00007f324bdc3000) libtwolame-72d74ef7.so.0.0.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libtwolame-72d74ef7.so.0.0.0 (0x00007f324bd9a000) libvorbis-f4a9a6fd.so.0.4.9 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libvorbis-f4a9a6fd.so.0.4.9 (0x00007f324bd5d000) libvorbisenc-0d9d5bdf.so.2.0.12 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libvorbisenc-0d9d5bdf.so.2.0.12 (0x00007f324bcac000) libx264-2881b7ff.so.164 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libx264-2881b7ff.so.164 (0x00007f324b989000) libx265-d8690e8d.so.199 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libx265-d8690e8d.so.199 (0x00007f324a6fd000) libxvidcore-d29bca61.so.4.3 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libxvidcore-d29bca61.so.4.3 (0x00007f324a5ef000) libxcb-65da195c.so.1.1.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libxcb-65da195c.so.1.1.0 (0x00007f324a3bc000) libxcb-shm-7a199f70.so.0.0.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libxcb-shm-7a199f70.so.0.0.0 (0x00007f324a1b5000) libxcb-shape-25c2b258.so.0.0.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libxcb-shape-25c2b258.so.0.0.0 (0x00007f3249fae000) libxcb-xfixes-9be3ba6f.so.0.0.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libxcb-xfixes-9be3ba6f.so.0.0.0 (0x00007f3249d9e000) libpostproc-9d3ac700.so.56.6.100 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libpostproc-9d3ac700.so.56.6.100 (0x00007f3249d7c000) libass-8499ab98.so.9.1.3 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libass-8499ab98.so.9.1.3 (0x00007f3249d3a000) libfontconfig-99ba2620.so.1.12.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libfontconfig-99ba2620.so.1.12.0 (0x00007f3249ce6000) libfreetype-19bd6cfb.so.6.17.1 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libfreetype-19bd6cfb.so.6.17.1 (0x00007f3249c35000) /lib64/ld-linux-x86-64.so.2 (0x00007f324f03a000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f3249c2d000) libunistring-aeeab030.so.2.1.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libunistring-aeeab030.so.2.1.0 (0x00007f3249aa6000) libnettle-cb75a9d6.so.8.4 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libnettle-cb75a9d6.so.8.4 (0x00007f3249a5b000) libhogweed-5d799758.so.6.4 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libhogweed-5d799758.so.6.4 (0x00007f3249a0a000) libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f3249828000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f324980b000) libogg-bbd52b06.so.0.8.5 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libogg-bbd52b06.so.0.8.5 (0x00007f32497ff000) librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f32497f5000) libXau-00ec42fe.so.6.0.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libXau-00ec42fe.so.6.0.0 (0x00007f32495f0000) libfribidi-baef595b.so.0.4.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libfribidi-baef595b.so.0.4.0 (0x00007f32495cd000) libharfbuzz-d40f381a.so.0.40100.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libharfbuzz-d40f381a.so.0.40100.0 (0x00007f32494b9000) libuuid-f64cda11.so.1.3.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libuuid-f64cda11.so.1.3.0 (0x00007f32492b3000) libpng16-1f529098.so.16.37.0 => /home/pon/.local/share/virtualenvs/svddb_sdk-qAt4tE2E/lib/python3.10/site-packages/av/./../av.libs/libpng16-1f529098.so.16.37.0 (0x00007f3249282000) *** 但是当我想生成一个含有各种第三方动态链接库的 wheel 文件的时候,我不知道该怎么办了 我按照 pyav 的 readme.md 打包出来的 wheel 里面没有这些动态链接库,而是通过相对路径引用的 过程如下: bash git clone git@github.com:PyAV-Org/PyAV cd PyAV source scripts/activate.sh # Either install the testing dependencies: pip install --upgrade -r tests/requirements.txt # or have it all, including FFmpeg, built/installed for you: ./scripts/build-deps # Build PyAV. make «"https://github.com/PyAV-> Org/PyAV/blob/main/README.md" (https://link.segmentfault.com/?enc=1in3x%2BL%2BTbxdm8%2BqBYgI8Q%3D%3D.HYG0lDqfobb3JM0EhqoIdJ5Rb5bexpryOk0K9O2mehak1YHT1aPhc5gxtFbETzdiE2vCp4qNeaXbFSNgtfpANQ%3D%3D)» 打包成 wheel python setup.py sdist bdist_wheel 然后新找了一个虚拟环境去安装这个包 ─➤ pip install /home/pon/code/me/github/PyAV/dist/av-10.0.0-cp38-cp38-linux_x86_64.whl Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple Processing /home/pon/code/me/github/PyAV/dist/av-10.0.0-cp38-cp38-linux_x86_64.whl Installing collected packages: av Successfully installed av-10.0.0 安装好了之后,看了一下是否有 "av.libs" 文件夹,发现没有 ╰─➤ ll /home/pon/.local/share/virtualenvs/ideaboom-KZ0_GR-a/lib/python3.8/site-packages | grep av drwxrwxr-x 11 pon pon 4.0K Sep 12 09:34 av drwxrwxr-x 3 pon pon 4.0K Sep 12 09:34 av-10.0.0.dist-info *** 不过到是不影响使用 因为指向的动态链接库,指到 "/lib/x86_64-linux-gnu/" 去了 (ideaboom) ╭─pon@admini ~/.local/share/virtualenvs/ideaboom-KZ0_GR-a/lib/python3.8/site-packages/av ╰─➤ ldd _core.cpython-38-x86_64-linux-gnu.so linux-vdso.so.1 (0x00007ffe2a5ac000) libavformat.so.58 => /lib/x86_64-linux-gnu/libavformat.so.58 (0x00007fbb8c7ed000) libavcodec.so.58 => /lib/x86_64-linux-gnu/libavcodec.so.58 (0x00007fbb8b22c000) libavdevice.so.58 => /lib/x86_64-linux-gnu/libavdevice.so.58 (0x00007fbb8b1f8000) libavutil.so.56 => /lib/x86_64-linux-gnu/libavutil.so.56 (0x00007fbb8b0cf000) libavfilter.so.7 => /lib/x86_64-linux-gnu/libavfilter.so.7 (0x00007fbb8ad4e000) libswscale.so.5 => /lib/x86_64-linux-gnu/libswscale.so.5 (0x00007fbb8acb7000) libswresample.so.3 => /lib/x86_64-linux-gnu/libswresample.so.3 (0x00007fbb8ac93000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fbb8aaa1000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fbb8a952000) libxml2.so.2 => /lib/x86_64-linux-gnu/libxml2.so.2 (0x00007fbb8a798000) libbz2.so.1.0 => /lib/x86_64-linux-gnu/libbz2.so.1.0 (0x00007fbb8a785000) libgme.so.0 => /lib/x86_64-linux-gnu/libgme.so.0 (0x00007fbb8a738000) libopenmpt.so.0 => /lib/x86_64-linux-gnu/libopenmpt.so.0 (0x00007fbb8a549000) libchromaprint.so.1 => /lib/x86_64-linux-gnu/libchromaprint.so.1 (0x00007fbb8a533000) libbluray.so.2 => /lib/x86_64-linux-gnu/libbluray.so.2 (0x00007fbb8a4e2000) libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fbb8a4c6000) libgnutls.so.30 => /lib/x86_64-linux-gnu/libgnutls.so.30 (0x00007fbb8a2f0000) libssh-gcrypt.so.4 => /lib/x86_64-linux-gnu/libssh-gcrypt.so.4 (0x00007fbb8a264000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fbb8a25c000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fbb8a239000) libvpx.so.6 => /lib/x86_64-linux-gnu/libvpx.so.6 (0x00007fbb8a001000) libwebpmux.so.3 => /lib/x86_64-linux-gnu/libwebpmux.so.3 (0x00007fbb89ff5000) libwebp.so.6 => /lib/x86_64-linux-gnu/libwebp.so.6 (0x00007fbb89f8b000) liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007fbb89f62000) librsvg-2.so.2 => /lib/x86_64-linux-gnu/librsvg-2.so.2 (0x00007fbb89643000) libgobject-2.0.so.0 => /lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007fbb895e3000) libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007fbb894b9000) libcairo.so.2 => /lib/x86_64-linux-gnu/libcairo.so.2 (0x00007fbb89396000) libzvbi.so.0 => /lib/x86_64-linux-gnu/libzvbi.so.0 (0x00007fbb89307000) libsnappy.so.1 => /lib/x86_64-linux-gnu/libsnappy.so.1 (0x00007fbb892fc000) libaom.so.0 => /lib/x86_64-linux-gnu/libaom.so.0 (0x00007fbb88e5c000) libcodec2.so.0.9 => /lib/x86_64-linux-gnu/libcodec2.so.0.9 (0x00007fbb88078000) libgsm.so.1 => /lib/x86_64-linux-gnu/libgsm.so.1 (0x00007fbb88069000) libmp3lame.so.0 => /lib/x86_64-linux-gnu/libmp3lame.so.0 (0x00007fbb87ff1000) libopenjp2.so.7 => /lib/x86_64-linux-gnu/libopenjp2.so.7 (0x00007fbb87f9b000) libopus.so.0 => /lib/x86_64-linux-gnu/libopus.so.0 (0x00007fbb87f3c000) libshine.so.3 => /lib/x86_64-linux-gnu/libshine.so.3 (0x00007fbb87d2f000) libspeex.so.1 => /lib/x86_64-linux-gnu/libspeex.so.1 (0x00007fbb87d11000) libtheoraenc.so.1 => /lib/x86_64-linux-gnu/libtheoraenc.so.1 (0x00007fbb87cd4000) libtheoradec.so.1 => /lib/x86_64-linux-gnu/libtheoradec.so.1 (0x00007fbb87cb4000) libtwolame.so.0 => /lib/x86_64-linux-gnu/libtwolame.so.0 (0x00007fbb87c8e000) libvorbis.so.0 => /lib/x86_64-linux-gnu/libvorbis.so.0 (0x00007fbb87c60000) libvorbisenc.so.2 => /lib/x86_64-linux-gnu/libvorbisenc.so.2 (0x00007fbb87bb3000) libwavpack.so.1 => /lib/x86_64-linux-gnu/libwavpack.so.1 (0x00007fbb87b87000) libx264.so.155 => /lib/x86_64-linux-gnu/libx264.so.155 (0x00007fbb878c9000) libx265.so.179 => /lib/x86_64-linux-gnu/libx265.so.179 (0x00007fbb8695b000) libxvidcore.so.4 => /lib/x86_64-linux-gnu/libxvidcore.so.4 (0x00007fbb86848000) libva.so.2 => /lib/x86_64-linux-gnu/libva.so.2 (0x00007fbb8681f000) libraw1394.so.11 => /lib/x86_64-linux-gnu/libraw1394.so.11 (0x00007fbb8660e000) libavc1394.so.0 => /lib/x86_64-linux-gnu/libavc1394.so.0 (0x00007fbb86409000) librom1394.so.0 => /lib/x86_64-linux-gnu/librom1394.so.0 (0x00007fbb86204000) libiec61883.so.0 => /lib/x86_64-linux-gnu/libiec61883.so.0 (0x00007fbb861f6000) libjack.so.0 => /lib/x86_64-linux-gnu/libjack.so.0 (0x00007fbb861aa000) libdrm.so.2 => /lib/x86_64-linux-gnu/libdrm.so.2 (0x00007fbb86192000) libopenal.so.1 => /lib/x86_64-linux-gnu/libopenal.so.1 (0x00007fbb860aa000) libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fbb86080000) libxcb-shm.so.0 => /lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007fbb8607b000) libxcb-shape.so.0 => /lib/x86_64-linux-gnu/libxcb-shape.so.0 (0x00007fbb86076000) libxcb-xfixes.so.0 => /lib/x86_64-linux-gnu/libxcb-xfixes.so.0 (0x00007fbb8606c000) libcdio_paranoia.so.2 => /lib/x86_64-linux-gnu/libcdio_paranoia.so.2 (0x00007fbb86060000) libcdio_cdda.so.2 => /lib/x86_64-linux-gnu/libcdio_cdda.so.2 (0x00007fbb86056000) libdc1394.so.22 => /lib/x86_64-linux-gnu/libdc1394.so.22 (0x00007fbb85fde000) libasound.so.2 => /lib/x86_64-linux-gnu/libasound.so.2 (0x00007fbb85ee3000) libcaca.so.0 => /lib/x86_64-linux-gnu/libcaca.so.0 (0x00007fbb85e17000) libGL.so.1 => /lib/x86_64-linux-gnu/libGL.so.1 (0x00007fbb85d8f000) libpulse.so.0 => /lib/x86_64-linux-gnu/libpulse.so.0 (0x00007fbb85d38000) libSDL2-2.0.so.0 => /lib/x86_64-linux-gnu/libSDL2-2.0.so.0 (0x00007fbb85be3000) libsndio.so.7.0 => /lib/x86_64-linux-gnu/libsndio.so.7.0 (0x00007fbb85bd2000) libXv.so.1 => /lib/x86_64-linux-gnu/libXv.so.1 (0x00007fbb859cd000) libX11.so.6 => /lib/x86_64-linux-gnu/libX11.so.6 (0x00007fbb85890000) libXext.so.6 => /lib/x86_64-linux-gnu/libXext.so.6 (0x00007fbb8587b000) libva-drm.so.2 => /lib/x86_64-linux-gnu/libva-drm.so.2 (0x00007fbb85874000) libva-x11.so.2 => /lib/x86_64-linux-gnu/libva-x11.so.2 (0x00007fbb8586c000) libvdpau.so.1 => /lib/x86_64-linux-gnu/libvdpau.so.1 (0x00007fbb85866000) libOpenCL.so.1 => /lib/x86_64-linux-gnu/libOpenCL.so.1 (0x00007fbb8565b000) libpostproc.so.55 => /lib/x86_64-linux-gnu/libpostproc.so.55 (0x00007fbb85639000) libbs2b.so.0 => /lib/x86_64-linux-gnu/libbs2b.so.0 (0x00007fbb85630000) liblilv-0.so.0 => /lib/x86_64-linux-gnu/liblilv-0.so.0 (0x00007fbb85615000) librubberband.so.2 => /lib/x86_64-linux-gnu/librubberband.so.2 (0x00007fbb855d8000) libmysofa.so.1 => /lib/x86_64-linux-gnu/libmysofa.so.1 (0x00007fbb855c7000) libflite_cmu_us_awb.so.1 => /lib/x86_64-linux-gnu/libflite_cmu_us_awb.so.1 (0x00007fbb851d0000) libflite_cmu_us_kal.so.1 => /lib/x86_64-linux-gnu/libflite_cmu_us_kal.so.1 (0x00007fbb8506a000) libflite_cmu_us_kal16.so.1 => /lib/x86_64-linux-gnu/libflite_cmu_us_kal16.so.1 (0x00007fbb84c8e000) libflite_cmu_us_rms.so.1 => /lib/x86_64-linux-gnu/libflite_cmu_us_rms.so.1 (0x00007fbb847f3000) libflite_cmu_us_slt.so.1 => /lib/x86_64-linux-gnu/libflite_cmu_us_slt.so.1 (0x00007fbb843fb000) libflite.so.1 => /lib/x86_64-linux-gnu/libflite.so.1 (0x00007fbb843c2000) libfribidi.so.0 => /lib/x86_64-linux-gnu/libfribidi.so.0 (0x00007fbb843a5000) libass.so.9 => /lib/x86_64-linux-gnu/libass.so.9 (0x00007fbb84172000) libvidstab.so.1.1 => /lib/x86_64-linux-gnu/libvidstab.so.1.1 (0x00007fbb8415c000) libzmq.so.5 => /lib/x86_64-linux-gnu/libzmq.so.5 (0x00007fbb840b6000) libfontconfig.so.1 => /lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007fbb8406f000) libfreetype.so.6 => /lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007fbb83fb0000) libsoxr.so.0 => /lib/x86_64-linux-gnu/libsoxr.so.0 (0x00007fbb83f45000) /lib64/ld-linux-x86-64.so.2 (0x00007fbb8ca83000) libicuuc.so.66 => /lib/x86_64-linux-gnu/libicuuc.so.66 (0x00007fbb83d5d000) libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fbb83b7b000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fbb83b60000) libmpg123.so.0 => /lib/x86_64-linux-gnu/libmpg123.so.0 (0x00007fbb83b00000) libvorbisfile.so.3 => /lib/x86_64-linux-gnu/libvorbisfile.so.3 (0x00007fbb83af5000) libp11-kit.so.0 => /lib/x86_64-linux-gnu/libp11-kit.so.0 (0x00007fbb839bd000) libidn2.so.0 => /lib/x86_64-linux-gnu/libidn2.so.0 (0x00007fbb8399c000) libunistring.so.2 => /lib/x86_64-linux-gnu/libunistring.so.2 (0x00007fbb8381a000) libtasn1.so.6 => /lib/x86_64-linux-gnu/libtasn1.so.6 (0x00007fbb83804000) libnettle.so.7 => /lib/x86_64-linux-gnu/libnettle.so.7 (0x00007fbb837ca000) libhogweed.so.5 => /lib/x86_64-linux-gnu/libhogweed.so.5 (0x00007fbb83793000) libgmp.so.10 => /lib/x86_64-linux-gnu/libgmp.so.10 (0x00007fbb8370d000) libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007fbb835ef000) libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007fbb835cc000) libgssapi_krb5.so.2 => /lib/x86_64-linux-gnu/libgssapi_krb5.so.2 (0x00007fbb8357f000) libcairo-gobject.so.2 => /lib/x86_64-linux-gnu/libcairo-gobject.so.2 (0x00007fbb83573000) libgdk_pixbuf-2.0.so.0 => /lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007fbb83549000) libgio-2.0.so.0 => /lib/x86_64-linux-gnu/libgio-2.0.so.0 (0x00007fbb83368000) libpangocairo-1.0.so.0 => /lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x00007fbb83356000) libpango-1.0.so.0 => /lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x00007fbb83307000) libffi.so.7 => /lib/x86_64-linux-gnu/libffi.so.7 (0x00007fbb832fb000) libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fbb83288000) libpixman-1.so.0 => /lib/x86_64-linux-gnu/libpixman-1.so.0 (0x00007fbb831df000) libpng16.so.16 => /lib/x86_64-linux-gnu/libpng16.so.16 (0x00007fbb831a7000) libxcb-render.so.0 => /lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007fbb83198000) libXrender.so.1 => /lib/x86_64-linux-gnu/libXrender.so.1 (0x00007fbb82f8e000) libogg.so.0 => /lib/x86_64-linux-gnu/libogg.so.0 (0x00007fbb82f81000) libnuma.so.1 => /lib/x86_64-linux-gnu/libnuma.so.1 (0x00007fbb82f72000) librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fbb82f68000) libXau.so.6 => /lib/x86_64-linux-gnu/libXau.so.6 (0x00007fbb82f62000) libXdmcp.so.6 => /lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007fbb82f5a000) libcdio.so.18 => /lib/x86_64-linux-gnu/libcdio.so.18 (0x00007fbb82d32000) libusb-1.0.so.0 => /lib/x86_64-linux-gnu/libusb-1.0.so.0 (0x00007fbb82d14000) libslang.so.2 => /lib/x86_64-linux-gnu/libslang.so.2 (0x00007fbb82a1d000) libncursesw.so.6 => /lib/x86_64-linux-gnu/libncursesw.so.6 (0x00007fbb829e3000) libtinfo.so.6 => /lib/x86_64-linux-gnu/libtinfo.so.6 (0x00007fbb829b3000) libGLdispatch.so.0 => /lib/x86_64-linux-gnu/libGLdispatch.so.0 (0x00007fbb828fb000) libGLX.so.0 => /lib/x86_64-linux-gnu/libGLX.so.0 (0x00007fbb828c7000) libpulsecommon-13.99.so => /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-13.99.so (0x00007fbb82843000) libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007fbb827f2000) libXcursor.so.1 => /lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007fbb827e5000) libXinerama.so.1 => /lib/x86_64-linux-gnu/libXinerama.so.1 (0x00007fbb827e0000) libXi.so.6 => /lib/x86_64-linux-gnu/libXi.so.6 (0x00007fbb827ce000) libXrandr.so.2 => /lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007fbb827bf000) libXss.so.1 => /lib/x86_64-linux-gnu/libXss.so.1 (0x00007fbb827ba000) libXxf86vm.so.1 => /lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007fbb827b3000) libwayland-egl.so.1 => /lib/x86_64-linux-gnu/libwayland-egl.so.1 (0x00007fbb827ae000) libwayland-client.so.0 => /lib/x86_64-linux-gnu/libwayland-client.so.0 (0x00007fbb8279d000) libwayland-cursor.so.0 => /lib/x86_64-linux-gnu/libwayland-cursor.so.0 (0x00007fbb82792000) libxkbcommon.so.0 => /lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x00007fbb82750000) libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007fbb82734000) libXfixes.so.3 => /lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007fbb8272c000) libserd-0.so.0 => /lib/x86_64-linux-gnu/libserd-0.so.0 (0x00007fbb8270b000) libsord-0.so.0 => /lib/x86_64-linux-gnu/libsord-0.so.0 (0x00007fbb826ff000) libsratom-0.so.0 => /lib/x86_64-linux-gnu/libsratom-0.so.0 (0x00007fbb826f3000) libsamplerate.so.0 => /lib/x86_64-linux-gnu/libsamplerate.so.0 (0x00007fbb82385000) libfftw3.so.3 => /lib/x86_64-linux-gnu/libfftw3.so.3 (0x00007fbb8217f000) libflite_usenglish.so.1 => /lib/x86_64-linux-gnu/libflite_usenglish.so.1 (0x00007fbb82154000) libflite_cmulex.so.1 => /lib/x86_64-linux-gnu/libflite_cmulex.so.1 (0x00007fbb820bd000) libharfbuzz.so.0 => /lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007fbb81fb9000) libgomp.so.1 => /lib/x86_64-linux-gnu/libgomp.so.1 (0x00007fbb81f75000) libsodium.so.23 => /lib/x86_64-linux-gnu/libsodium.so.23 (0x00007fbb81f1d000) libpgm-5.2.so.0 => /lib/x86_64-linux-gnu/libpgm-5.2.so.0 (0x00007fbb81ece000) libnorm.so.1 => /lib/x86_64-linux-gnu/libnorm.so.1 (0x00007fbb81d73000) libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007fbb81d45000) libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007fbb81d3c000) libicudata.so.66 => /lib/x86_64-linux-gnu/libicudata.so.66 (0x00007fbb80279000) libkrb5.so.3 => /lib/x86_64-linux-gnu/libkrb5.so.3 (0x00007fbb8019c000) libk5crypto.so.3 => /lib/x86_64-linux-gnu/libk5crypto.so.3 (0x00007fbb8016b000) libcom_err.so.2 => /lib/x86_64-linux-gnu/libcom_err.so.2 (0x00007fbb80164000) libkrb5support.so.0 => /lib/x86_64-linux-gnu/libkrb5support.so.0 (0x00007fbb80155000) libgmodule-2.0.so.0 => /lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007fbb8014d000) libmount.so.1 => /lib/x86_64-linux-gnu/libmount.so.1 (0x00007fbb800ed000) libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007fbb800c2000) libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007fbb800a6000) libpangoft2-1.0.so.0 => /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 (0x00007fbb8008d000) libthai.so.0 => /lib/x86_64-linux-gnu/libthai.so.0 (0x00007fbb80080000) libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007fbb80053000) libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007fbb7ffa4000) libwrap.so.0 => /lib/x86_64-linux-gnu/libwrap.so.0 (0x00007fbb7ff98000) libsndfile.so.1 => /lib/x86_64-linux-gnu/libsndfile.so.1 (0x00007fbb7ff1a000) libasyncns.so.0 => /lib/x86_64-linux-gnu/libasyncns.so.0 (0x00007fbb7fd12000) libapparmor.so.1 => /lib/x86_64-linux-gnu/libapparmor.so.1 (0x00007fbb7fcfd000) libgraphite2.so.3 => /lib/x86_64-linux-gnu/libgraphite2.so.3 (0x00007fbb7fcd0000) libkeyutils.so.1 => /lib/x86_64-linux-gnu/libkeyutils.so.1 (0x00007fbb7fcc9000) libblkid.so.1 => /lib/x86_64-linux-gnu/libblkid.so.1 (0x00007fbb7fc70000) libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0 (0x00007fbb7fbdf000) libdatrie.so.1 => /lib/x86_64-linux-gnu/libdatrie.so.1 (0x00007fbb7fbd5000) liblz4.so.1 => /lib/x86_64-linux-gnu/liblz4.so.1 (0x00007fbb7fbb4000) libnsl.so.1 => /lib/x86_64-linux-gnu/libnsl.so.1 (0x00007fbb7fb97000) libFLAC.so.8 => /lib/x86_64-linux-gnu/libFLAC.so.8 (0x00007fbb7fb57000) 但是我还是想把这些依赖的动态链接库整到 "av.libs" 路径中,要怎么搞? *** 然后我把这个 wheel 包,找了一个 docker 测试了一下 docker pull python:3.8-bookworm docker run --rm -it -v ./dist:/code python:3.8 -bookworm bash cd code PS1="\[\e[1;32m\](base) \[\e[1;34m\]\u@\h:\[\e[0m\]\w# " alias ll="ls -alh --color" 安装 (base) root@6588d6ebf9be:/code# ll total 6.3M drwxrwxr-x 2 1001 1001 4.0K Sep 12 09:22 . drwxr-xr-x 1 root root 4.0K Sep 12 09:45 .. -rw-rw-r-- 1 1001 1001 3.9M Sep 12 09:22 av-10.0.0-cp38-cp38-linux_x86_64.whl -rw-rw-r-- 1 1001 1001 2.4M Sep 12 09:22 av-10.0.0.tar.gz (base) root@6588d6ebf9be:/code# pip install ./av-10.0.0-cp38-cp38-linux_x86_64.whl Processing ./av-10.0.0-cp38-cp38-linux_x86_64.whl Installing collected packages: av Successfully installed av-10.0.0 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv [notice] A new release of pip is available: 23.0.1 -> 23.2.1 [notice] To update, run: pip install --upgrade pip 看一下有没有 av.libs (base) root@6588d6ebf9be:/code# pip show av Name: av Version: 10.0.0 Summary: Pythonic bindings for FFmpeg's libraries. Home-page: https://github.com/PyAV-Org/PyAV Author: Mike Boers Author-email: pyav@mikeboers.com License: BSD Location: /usr/local/lib/python3.8/site-packages Requires: Required-by: (base) root@6588d6ebf9be:/code# cd /usr/local/lib/python3.8/site-packages (base) root@6588d6ebf9be:/usr/local/lib/python3.8/site-packages# ll total 68K drwxr-xr-x 1 root root 4.0K Sep 12 09:46 . drwxr-xr-x 1 root root 4.0K Sep 7 13:41 .. -rw-r--r-- 1 root root 119 Sep 7 13:41 README.txt drwxr-xr-x 1 root root 4.0K Sep 12 09:46 _distutils_hack drwxr-xr-x 11 root root 4.0K Sep 12 09:46 av drwxr-xr-x 3 root root 4.0K Sep 12 09:46 av-10.0.0.dist-info -rw-r--r-- 1 root root 152 Sep 7 13:41 distutils-precedence.pth drwxr-xr-x 1 root root 4.0K Sep 12 09:46 pip drwxr-xr-x 2 root root 4.0K Sep 7 13:41 pip-23.0.1.dist-info drwxr-xr-x 5 root root 4.0K Sep 7 13:41 pkg_resources drwxr-xr-x 6 root root 4.0K Sep 7 13:41 setuptools drwxr-xr-x 2 root root 4.0K Sep 7 13:41 setuptools-57.5.0.dist-info drwxr-xr-x 4 root root 4.0K Sep 7 13:41 wheel drwxr-xr-x 2 root root 4.0K Sep 7 13:41 wheel-0.41.2.dist-info 没有 "av.libs" 查看 "ldd _core.cpython-38-x86_64-linux-gnu.so" (base) root@6588d6ebf9be:/usr/local/lib/python3.8/site-packages# cd av (base) root@6588d6ebf9be:/usr/local/lib/python3.8/site-packages/av# (base) root@6588d6ebf9be:/usr/local/lib/python3.8/site-packages/av# ll total 3.1M drwxr-xr-x 11 root root 4.0K Sep 12 09:46 . drwxr-xr-x 1 root root 4.0K Sep 12 09:46 .. -rw-r--r-- 1 root root 0 Sep 12 09:46 __init__.pxd -rw-r--r-- 1 root root 1.5K Sep 12 09:46 __init__.py -rw-r--r-- 1 root root 1.2K Sep 12 09:46 __main__.py drwxr-xr-x 2 root root 4.0K Sep 12 09:46 __pycache__ -rwxr-xr-x 1 root root 108K Sep 12 09:46 _core.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 23 Sep 12 09:46 about.py drwxr-xr-x 3 root root 4.0K Sep 12 09:46 audio -rwxr-xr-x 1 root root 139K Sep 12 09:46 buffer.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 134 Sep 12 09:46 buffer.pxd -rwxr-xr-x 1 root root 104K Sep 12 09:46 bytesource.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 249 Sep 12 09:46 bytesource.pxd drwxr-xr-x 3 root root 4.0K Sep 12 09:46 codec drwxr-xr-x 3 root root 4.0K Sep 12 09:46 container drwxr-xr-x 3 root root 4.0K Sep 12 09:46 data -rw-r--r-- 1 root root 3.0K Sep 12 09:46 datasets.py -rw-r--r-- 1 root root 2.3K Sep 12 09:46 deprecation.py -rwxr-xr-x 1 root root 116K Sep 12 09:46 descriptor.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 527 Sep 12 09:46 descriptor.pxd -rwxr-xr-x 1 root root 166K Sep 12 09:46 dictionary.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 182 Sep 12 09:46 dictionary.pxd -rwxr-xr-x 1 root root 390K Sep 12 09:46 enum.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 66 Sep 12 09:46 enum.pxd -rwxr-xr-x 1 root root 348K Sep 12 09:46 error.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 135 Sep 12 09:46 error.pxd drwxr-xr-x 3 root root 4.0K Sep 12 09:46 filter -rwxr-xr-x 1 root root 231K Sep 12 09:46 format.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 242 Sep 12 09:46 format.pxd -rwxr-xr-x 1 root root 185K Sep 12 09:46 frame.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 453 Sep 12 09:46 frame.pxd -rwxr-xr-x 1 root root 236K Sep 12 09:46 logging.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 24 Sep 12 09:46 logging.pxd -rwxr-xr-x 1 root root 172K Sep 12 09:46 option.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 374 Sep 12 09:46 option.pxd -rwxr-xr-x 1 root root 212K Sep 12 09:46 packet.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 447 Sep 12 09:46 packet.pxd -rwxr-xr-x 1 root root 167K Sep 12 09:46 plane.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 196 Sep 12 09:46 plane.pxd drwxr-xr-x 3 root root 4.0K Sep 12 09:46 sidedata -rwxr-xr-x 1 root root 245K Sep 12 09:46 stream.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 676 Sep 12 09:46 stream.pxd drwxr-xr-x 3 root root 4.0K Sep 12 09:46 subtitles -rwxr-xr-x 1 root root 127K Sep 12 09:46 utils.cpython-38-x86_64-linux-gnu.so -rw-r--r-- 1 root root 523 Sep 12 09:46 utils.pxd drwxr-xr-x 3 root root 4.0K Sep 12 09:46 video 发现和 libav 相关的都是 not found (base) root@6588d6ebf9be:/usr/local/lib/python3.8/site-packages/av# ldd _core.cpython-38-x86_64-linux-gnu.so linux-vdso.so.1 (0x00007fff4f87d000) libavformat.so.58 => not found libavcodec.so.58 => not found libavdevice.so.58 => not found libavutil.so.56 => not found libavfilter.so.7 => not found libswscale.so.5 => not found libswresample.so.3 => not found libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fa8ba68e000) /lib64/ld-linux-x86-64.so.2 (0x00007fa8ba887000) 说明 pyav 依赖的 libav 等第三方库并没有被包含到 wheel 文件中
11
1
0
浏览量308
九久九

h5界面怎么添加到手机桌面?

一些浏览器可以走 PWA,部分手机浏览器不行,比如我的 1+。 拿 iOS Safari 举例,分享,然后“添加到主屏幕”即可。
0
0
0
浏览量0
九久九

环形图 hover 的时候,如何配置边框的样式?

解决方案 Solution VChart图表已经提供了对应的功能,VChart对图元上的各种常用交互抽象为了图元的状态,将图元的状态分为了以下几种: * "hover" 指针悬浮状态,图元被鼠标指针悬浮时的状态。 * "hover_reverse" 非指针悬浮状态,当有图元进入了 "hover" 状态时,其他图元的状态。 * "selected" 选中状态,图元被选中时的状态。 * "selected_reverse" 非选中状态,当有图元进入了 "selected" 状态时,其他图元的状态。 * "dimension_hover" 维度悬浮状态,鼠标指针悬浮在某一段 "x" 轴区域内时的状态。 * "dimension_hover_reverse" 非维度悬浮状态,当有图元进入了 "dimension_hover" 状态时,其他图元的状态。 如果想要hover到环形图时,改变图元的样式,可以在pie配置中,设置图元的hover状态。 "参考文档:图元的状态" (https://link.segmentfault.com/?enc=4br93sktdSo6XcOBVwTd7w%3D%3D.IoUu2K8MWS0dmWnRKkSBtILKZDZJhXAPOptjAyGYYhpRnnJ2%2B2yRs%2BABb7pG%2BkOZBscaYHp8QR%2Br%2F538iic2u1IREPcRI%2BA1CJv%2FP7BpL%2FU%3D) 代码示例 Code Example 在以下示例中,"pie.state"中设置了4个状态 1. "hover": 指针悬浮到的图元, 显示描边,填充透明度变低,扩展外半径。 2. "hover_reverse":其它未悬浮到的图元,缩小外半径。 3. "selected":指针选中的图元,扩大内半径和外半径。 4. "selected_reverse":其它未选中的图元,填充透明度变低。 import { useEffect, useRef } from "react"; import VChart from "@visactor/vchart"; export const Chart = () => { const containerRef = useRef(null); useEffect(() => { const spec = { type: "pie", data: [ { id: "data", values: [ { type: "oxygen", value: "46.60" }, { type: "silicon", value: "27.72" }, { type: "aluminum", value: "8.13" }, { type: "iron", value: "5" }, { type: "calcium", value: "3.63" }, { type: "sodium", value: "2.83" }, { type: "potassium", value: "2.59" }, { type: "others", value: "3.5" }, ], }, ], valueField: "value", categoryField: "type", outerRadius: 0.8, innerRadius: 0.5, padAngle: 0.5, pie: { state: { hover: { stroke: "#0FF", lineWidth: 1, fillOpacity: 0.9, outerRadius: 0.85, }, hover_reverse: { outerRadius: 0.7, innerRadius: 0.5, }, selected: { outerRadius: 0.85, innerRadius: 0.6, }, selected_reverse: { fillOpacity: 0.25, }, }, }, }; const vchart = new VChart(spec, { dom: containerRef.current, onError: console.error }); vchart.renderAsync(); return () => vchart.release(); }, []); return ( ); }; 结果展示 Results 在线示例:"https://codesandbox.io/s/pie-hover-llxwgy?file=/src/App.js" (https://link.segmentfault.com/?enc=LhG%2BtDnWssmtn3pmJRoH0Q%3D%3D.xAcegZgGeIADrpfJy0j7sPgek6%2FaIxGQTYhJyM4zjYgFtY0tSC%2FAY9HDqw42NC%2FapthrHJ49%2BGVeyb6kksMiNA%3D%3D) Online Demo: "https://codesandbox.io/s/pie-hover-llxwgy?file=/src/App.js" (https://link.segmentfault.com/?enc=2S2gI0dvbRrTZDoG7MMo3g%3D%3D.WGxw5Q4kATn25b6pa8fWK%2Fvcl4YfRMbqjB%2BSwdcUGROgvDfO4cjzPkTZD%2B85%2FunI0CELrsk9JtPxDadwEXuw7w%3D%3D) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241230/8f3cf5e33fd0413c30ddd286ed909978.png) 相关文档 "VChart Github" (https://link.segmentfault.com/?enc=v7rsrngIIwliW56Dc9I6GQ%3D%3D.lKmcuUn%2Bg6cCfVhVsFcN%2BZCjivx5BMjgtzXqv%2BERg2UsKQRnDknJ3Nyc86ZQcTht) "图元状态教程" (https://link.segmentfault.com/?enc=rK%2F2pdy3QPGOMorUAZrhoQ%3D%3D.B81Ix0iZ7o%2Bf0x6AeAia2BHEFLLRAQ11hOIOOs8mWgXKqlBHCSQOqzJpypGXeu72hMP9kVLqgQ6RW%2FLMOb6EgWYltV5sYohY3ot9bNOdyyQ%3D) "图表示例" (https://link.segmentfault.com/?enc=Gz27F6KP9LZucXsfeFDKMQ%3D%3D.2pnfMRKZzulR2gPP%2B2gvVBuF%2FOWnUgqIgNfosqXOIce92b5memkvwZ4lkeHoUHhLbzNujxSsWqZZSJ6QBQOrxA%3D%3D)
0
0
0
浏览量0
九久九

在python中如何解决排列三遇到的问题?

问题一; for s in sting: print(s) 问题二: import itertools import csv list2 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] x = list(itertools.product(list2, repeat=3)) sting = [''.join(map(str, tpl)) for tpl in x] for s in sting: print(s) csv_headers = ['排列数组', '期号', '开奖号码', '预测号码', '开奖日期', '和值', '百位号码走势', '十位号码走势', '各位号码走势', '组选号码分布', '和尾', '组选', '奇偶比', '大小比', '012路个数比'] with open('PermutationThree.csv', 'w', encoding='gbk', newline='') as f: f_csv = csv.writer(f) f_csv.writerow(csv_headers) # 给每个字符串创建一个新行 for s in sting: f_csv.writerow([s] + [''] * (len(csv_headers) - 1))
0
0
0
浏览量0
九久九

图片跨域问题?

这个看字面意思是还没有加上Access-Control-Allow-Origin。 看了一下你提供的这个图片,确实是还没有加上允许跨域的配置。 *** 这是阿里云oss的跨域设置,允许 "*.test.com" 跨域 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241229/4029ce5183715f69bfbbaecc195b6864.png) 测试,分别使用"ff.test.com"和"ff.btest.com"去验证是否配置成功,因为配置了"*.test.com"能匹配"ff.test.com",所以"ff.test.com"能正常返回跨域的设置。 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241229/324e116b2ed39d25a8a6faa6232105b0.png)
0
0
0
浏览量0
九久九

alloyTeam的eslint规则在vue/cli 5.0.8版本中会报错?

"https://cli.im/text" (https://link.segmentfault.com/?enc=izTMMLTKd1DEc%2Be%2BrhZWhw%3D%3D.moEzEV4AI4kHIlGS%2BOjJL3BkUlzBDjR1pUlJz03ikqw%3D)
0
0
0
浏览量0
九久九

linux 安装 nodejs,为什么环境变量 NODE_MAJOR 无法被填充?

NODE_MAJOR=18 echo "deb ... https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" 这里 "$NODE_MAJOR" 的替换是在当前的 bash 进程里完成的。而命令开始的 "MAJOR=18" 只影响新启动的 "echo" 进程。所以 "$NODE_MAJOR" 是替换不了的。 *** "NODE_MAJOR=18; ... " 里的 "NODE_MAJOR=18" 是一个独立的赋值语句,他会影响当前 shell 的环境。在其之后执行的所有进程都可以看到 "NODE_MAJOR" 的值。 (上面 "NODE_MAJOR=18 echo ..." 的里 "NODE_MOJOR=18" 是临时的,它只影响后面的 "echo" 。) *** "NODE_MOJOR=18 python ..." ,这个例子里,"python" 进程已经可以看到 "NODE_MAJOR=18" 的值了。所以其内部是可以用它做替换的。
0
0
0
浏览量0
九久九

类似移动端的时间轴要怎么实现?

"1696902605022.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241214/8cbf96efbcff570609ad0ac79d25183e.png) 求类似的移动端的组件
0
1
0
浏览量16
九久九

打开网址报错403 Forbidden,请问怎么解决?

打开网址报错403 Forbidden,请问怎么解决?防火墙和代理都已经关闭
0
1
0
浏览量15
九久九

远程桌面开发如何将内容复制到本机查询?

远程桌面开发如何将内容复制到本机查询?
0
1
0
浏览量14
九久九

vue如何使用v-bind绑定多个值(多个值中有v指令v-if)?

export default { data() { return { awesome: true, attrs:{"v-if":"awesome"} } } } toggle Vue is awesome! "https://play.vuejs.org/#eNp9UctuwyAQ/BXKqZXyUJSb5UR9KIf20FZt1..." (https://link.segmentfault.com/?enc=%2BCWguQ173R88rdrB%2Fh5y5w%3D%3D.aLUVM%2F81Xjx26hbNDr3pp0MlnXLHiTH82WVDt0pdcQ37OSjj%2F0g%2BBvSx%2B6aXmTrM0F1%2BwX8Zg4dcijM7rRQpTqTQQL3mITLnGjAlrBvPBgm7bXGnypvI%2F4BYZ2%2FxpWvGuQUJQAVsry65inXKYJh36LrnLJj3%2BDE7tzkgnPfDtnv6wK9iYS5dXn5k7WmQlSN9LGZg6kdIrZ9PjyuOYRifCo1fEudAnPoDyfNmgI%2BLWwHBlPAV8yyTqtRYzBJkzANawRutsgBqGqvxDHFfggFI9X%2F2KycKCy60QDsDuMRTAUGeXoMGNJ2K8QRhn3EfAyQx4bgZdWMPixP%2FZxj0SikPQJjoZGtZU0w6WgO8oJPV8AGLnYcIwYWOxscjdjgQN9MfuYnCRHq0AoW3oyR%2FJYx%2FNllNA%2B4v2cbicpGiGNSz3jTOfbGXPOFTMK22Dufkb774Blwbj%2FO8RKMhgJGqp%2BzDPiSU2q74WnEbhWXpA2wxXUwWyY6A%2FeEa4w0PYAfF9z5wHTEVLsEoipPD3WGqkCLnmtlx6%2B4CdsySe7HH1pa7gIBOo0lMPtA%2FrB7T1C0UjMKKo1J1%2FVaf8Eix7sUCOx6fidGMGaJYWtkJUf5zudoCAqBHpsq5ftqxc6YjjHgkcuRr) *** 问题来源:"https://stackoverflow.com/questions/41944054/reference-element-property-within-another-property" (https://link.segmentfault.com/?enc=y%2BGbG8Y3XsslzYcE2yns5A%3D%3D.QIErtH7pdGt3PzZCCNrZFDcI3%2FIEjMvwpedNzcG%2FEHCn9sYCO0QZ3%2BTNwzm5YNUrHpuvyXzalM3jtuPp921C3ZqRmS0NoaT5k5sh3DCJ81pP3qqIYDOw%2BBTvQYbTVE4%2B) 想要解决这个问题,又不想用v-for封装大改
0
1
0
浏览量11
九久九

js获取树行列表某个节点的父节点?

function findParentNode(list, cb, parent = null) { for(const node of list) { if(cb(node)) return parent; const res = findParentNode(node.children || [], cb, node); if(res) return res; } return null } findParentNode(arr, v => v.id === 2) // null findParentNode(arr, v => v.id === 311) // {id: 31 ...}
0
0
0
浏览量0
九久九

除了bootstrap还有哪些好用的框架?

之前做响应网站(pc,手机端自适应)一般都用bootstrap,之前用的是v3版本,但现在已经是v5了,现在用bootstrap的还多吗?一般用哪个版本?或者现在用的比较多的样式架构有哪些???
0
1
0
浏览量16
九久九

封装axios调用接口后数据获取undefined,不封装直接在需要页面获取数据的话又能拿到?

获取数据 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241130/088480ab68cfe3ecfd91c32b2aa3444f.png) async getAllData() { const data=await parameter console.log(data); // 直接获取数据 // const data=await axios.get('http://127.0.0.1:4523/m1/3483169-0-default/parametesetion').then( // response=>{ // console.log(response); // return response.data // }, // err=>{ // return err // } // ) this.allData = data }, 封装的axios: "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241130/f8ed2caceecd37b0ea4661adadc1f4d8.png) 统一管理接口: "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241130/31d881ef228ea2697608159e0bf598b9.png)
0
1
0
浏览量12
九久九

小白求助各位大佬,html提取指定的内容,其他都不要的,正则表达式 怎么写?

怎么通过正则表达式提取html中的 "label_name":"历史" 其中【历史】是变量 其他全部不要呢?要怎么定位,正则表达式要怎么写?? 或者说,php代码也行,就是我输入 指定的网址,直接把html代码过滤后, 输出 "label_name":"历史" 小白求助
0
1
0
浏览量11
九久九

vue3 props 是对象的情况如何变为响应式?

如题,定义一个组件,设置 props 如下: interface Props { decorateConfig: { 'src'?: string }, width?: number, height?: number } const props = withDefaults(defineProps(), { decorateConfig: () => { return { src: '' } } }) 当我直接定义 const src = props.decorateConfig.src 的时候,会提示这样会失去响应性 Getting a value from the `props` in root scope of `` will cause the value to lose reactivity. 所以想问下,如何可以将这样的定义,转为响应性
0
1
0
浏览量14
九久九

vue3 鼠标进过 table 里面的 tr 就会加载一个svg图片,这什么意思?

"https://www.gethalfmoon.com/#" (https://link.segmentfault.com/?enc=jxjAuc%2FnSZbslr3Ik1jGAQ%3D%3D.bYDAV8P2zYdPgbk2PI%2FkIVu1bh6w1rJ9gLRCVr7b3Rk%3D) 也不知道是不是这个,根据截图内容,找到类似的就是这个了。 然后是点击 switch 开关之后出现的,那么所以,是不是你的代码问题。 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241127/51ec417696656cfca04d4ff44d7195b1.png)
0
0
0
浏览量0
九久九

为什么直接return出去,数据不更新查询后没有数据,重新定义一个变量接收数据,数据值就更新成功?

"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241127/e765af41ba7cf4adce6893aebacb6635.png) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241127/c448f221fd88a699c77ef6301dda696c.png)
0
1
0
浏览量20
九久九

原生微信小程序调用地址、图片无反应?

问题已解决,是因为用户隐私协议未完善导致得,关于该问题请看:"用户隐私API调用" (https://segmentfault.com/a/1190000044382360)
0
0
0
浏览量0
九久九

ElementUI的el-cascade希望限制显示的宽度?

通过这个 slot 做的吧? "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241121/259bfb40bb36fbcc1c1cfdb847224ab4.png) " {{ data.label }}" 这里应该是截断或者省略号。不然不就全展示了嘛?
0
0
0
浏览量0
九久九

npm run build,把dist里面的内容,都拷贝到web服务器,修改static里面的js的内容,页面不生效?

前端读取的static中的一个js文件,放到服务器上之后修改这个文件,页面不生效,需要重新打包才能生效
0
2
0
浏览量24
九久九

yarn install --offline 报错 Can't make a request in offline mode?

我使用yarn的离线安装,在联网的机子上 "yarn" 安装,再传到非上网机子上离线安装。都配置了"yarn-offline-mirror: 离线包文件夹地址"和"yarn-offline-mirror-pruning: true"。 在联网的机子上安装后把package.json、yarn.lock、离线包文件夹 都传到非上网机子上安装, "yarn install --offline" 报错 "Can't make a request in offline mode ("https://registry.npmmirror.com/@types/prop-types/-/prop-types-15.7.8.tgz)" 这个报错的依赖会变动 不是固定的。 我有多个项目,有的项目能装好,有的项目报错,不知道是什么原因。
0
1
0
浏览量16
九久九

请问 RedHat/Centos 6.7 final 开放外网情况,是否有资安问题需要升级版本?

这东西至少也要7.9吧,不过centos7.9也要停止更新了,换成ubuntu吧,挺好的
0
0
0
浏览量0
九久九

有没有离线的文字识别库,可以在浏览器环境中使用的?

有没有相关的库推荐,目前找到的都只适合桌面使用
0
1
0
浏览量15
九久九

uni-app x 会不会统一跨平台市场?

uni-app x 未来全端原生,性能超越其他跨平台包括自家现任uni-app。 «uni-app x,是下一代 uni-app,是一个跨平台应用开发引擎。 在App端,uni-app x 在iOS编译为swift、在Android编译为kotlin。没有使用js引擎、webview,完全达到了原生应用的功能、性能。»
0
1
0
浏览量15
九久九

业务场景下,后端获取前端用户ID的两种方案比较?

用 cookie-session 或者 token,而不是传输明文 user_id *** 「放到响应体中返回,后端去从返回的响应体中取」完全无厘头,client 发给 server 的叫做请求体,而不是响应体
0
0
0
浏览量0
九久九

关于 JVM Class被回收卸载的问题?

我梳理了一下,你现在的问题不是在探讨为什么threadLocal在tomcat中造成了内存泄露,而是只考虑类加载器与类的互引用让你觉得它们无法被卸载对吧 "WebAppClalssLoader 被gc的条件必然是没有任何人引用" 这是准确的吗?假设内存中有一对相互引用的对象,但是他们都没有任何其他的对象所引用,难道JVM就无法回收他们吗? 在不同的GC算法里对这种情况应该都是有所处理的,比如标记清除算法等等,尽管有相互引用,但是由于没有从根对象到达它们的路径,所以还是有可能被回收的。这是回答你的问题。 另外,这篇知乎文章的观点我也不是很认同。使用threadLocal时必须注意线程在threadLocal内持有的对象是否能回收。他的情况是认为通过tomcat对web应用进行reload之后就可以不管不顾了,殊不知他的程序根本没有正确地结束所有的线程,进而线程在threadLocal内持有的对象无法被回收,进而导致整个应用无法被回收。他的内存泄露是reload时不能彻底关闭之前的应用导致的
0
0
0
浏览量0
九久九

在使用POI的时候内存溢出了,怎么解决?

在使用POI的时候内存溢出了,怎么解决 我的Excel文件有50W行左右,在导入的时候报错提示内存溢出,这种情况怎么处理能不报错啊?
0
1
0
浏览量13
九久九

前端如何判断用户的电脑是 arm 还是 x86?

navigator.userAgentData.getHighEntropyValues(["architecture", "bitness"]) .then(ua => { if (navigator.userAgentData.platform === "Windows") { if (ua.architecture === 'x86') { if (ua.bitness === '64') { console.log("x86_64"); } else if (ua.bitness === '32') { console.log("x86"); } } else if (ua.architecture === 'arm') { if (ua.bitness === '64') { console.log("ARM64"); } else if (ua.bitness === '32') { console.log("ARM32"); } } } else { console.log("Not running on Windows"); } }); "image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241104/028eef6e73db27dc55877a00ef69e966.png) 微软官方文档: «"https://learn.microsoft.com/zh-cn/microsoft-edge/web-> platform..." (https://link.segmentfault.com/?enc=OBvQP6iTGTGoFk%2Fhyc%2F8gA%3D%3D.DxsrQydkCcoqAt8B1XeyzCVFEvbUAYvSpcZ0OHPpcT5rhwFgvGV76DTeWG%2Bty6uiiqzLE6DJyuvivUMNlxkPosH0Ifz80UzVwTl%2BVAP3o6eswPl5MwK5JmnXb%2FSrsFuY)» 截图中的用浏览器api就可以获取 navigator.userAgent; "image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241104/2f21bd84d7018695f379a255db1a01be.png)
0
0
0
浏览量0
九久九

两个inline-block 元素为什么会错位显示?

overflow:hidden的这个属性影响了inline-block元素baseline的位置;因为你的list也是行内块,也设置了overflow,而后下一个元素与前一个元素基线对齐就错位了,第二个也设置,baseline也改变就不错位了 11 22 33 44 span{ display:inline-block; } .desc{ overflow:hidden; } // 这时候另外的span元素会向下偏移; // 解决方案,修改vertical属性; .list { display: inline-block; width: 80px; height: 80px; overflow: hidden; vertical-align:middle; } .add { display: inline-block; width: 76px; height: 76px; color: #ccc; border: 2px dashed; transition: color .25s; position: relative; /** 为什么不设置overflow a标签就会下沉显示? **/ /* overflow: hidden; */ vertical-align:middle; }
0
0
0
浏览量0
九久九

json文件转成二进制一定比原来的数据量小吗?

1. 是的。二进制大概率会小不少。 2. 为了通用。能够在不同环境不同语言中使用。
0
0
0
浏览量0
九久九

canvas图片转换base64,由于图片过大,ios获取url失败?

"stackoverflow"有个类似的问题: «"https://stackoverflow.com/questions/40482586/getcontext2d-returns-null-in-> safari-10" (https://link.segmentfault.com/?enc=krU8YTKQ4ejXYI4WobAqpA%3D%3D.IGkPK1oViRFBv6jU1ttuf2yduMNJrvM%2FYQyHH%2FtWxzHPsmeNFbAgTEpVqryllUNHAxR0HZrSzTpgTwAutdVdLNuJkHWiQ2zRNZFcNgYuqwr6eg0yZfSkT%2BAGzO9oU2LW)» 解决方式 «"https://zhuanlan.zhihu.com/p/540761999" (https://link.segmentfault.com/?enc=7oGBy8Gy8RgO1X18n%2B%2BGrA%3D%3D.0WE2Q%2FrXU4gpO8YRwEkvedojDccwmLRUS7uTK2N4XJJWMjG6PZIXx5xXQ2Wv2Otd)»
0
0
0
浏览量0
九久九

使用Java如何给Excel文件的首行设置筛选?

用"官方示例" (https://link.segmentfault.com/?enc=29Z%2Be9%2Fd%2FiYL63OwK4ukoA%3D%3D.jVkyaG8WwSzNAM6uW3oZ9MtDIkPhyMmxOmnppsh1f%2B8CxD25rz5qOdRrWPGrZN4MNaO%2FgQxxOjjBUMiKaWdye4unSeS4kvvH9%2B2udKbn0A8%3D)试了一下,能正常显示筛选。 示例代码: try ( Workbook wb = new HSSFWorkbook(); //or new XSSFWorkbook(); OutputStream fileOut = Files.newOutputStream(Paths.get("workbook.xls")) ) { Sheet sheet = wb.createSheet(); // 指定区域设置自动筛选 sheet.setAutoFilter(CellRangeAddress.valueOf("C5:F200")); // 区域:C列5行~F列200行 wb.write(fileOut); } catch (IOException e) { throw new RuntimeException(e); } 运行截图: "image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241031/774ae8ec9e720aab09ed436be0b7bc23.png)
0
0
0
浏览量0
九久九

如何在 Vue3 中使用 checkbox-group 初始化时实现多个多选框选中状态同步?

import { reactive, onMounted } from 'vue'; import axios from 'axios'; const GNSS = reactive({ GNSSData: [], input_gga: 0, input_rmc: 0, input_dop: 0, input_gsa: 0, input_gsv: 0, input_heading: 0, input_zda: 0, input_gst: 0, }); async function fetchBackendData() { try { const response = await axios.get('/api/gnss-data'); const backendData = response.data; for (const [key, value] of Object.entries(backendData)) { const inputKey = `input_${key.split('_')[0]}`; GNSS[inputKey] = value; if (value !== 0) { const checkboxLabel = key.toUpperCase().replace('_FREQ', ''); GNSS.GNSSData.push(checkboxLabel); } } } catch (error) { console.error('Failed to fetch backend data:', error); } } onMounted(() => { fetchBackendData(); });
0
0
0
浏览量0
九久九

js怎么用正则匹配字符之间的空格?

/(?:\d+[\.\-,\s]){3}\d+\S+/ "snipaste_2023-12-22_09-55-09.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241027/71b1e4c91ef0f8dcad702837a100dc23.png) 传送门:"嗨正则 (hiregex.com)" (https://link.segmentfault.com/?enc=Pjs5Xz2Cmw2SBxjzAV%2FIPA%3D%3D.731q868Lx2q80QOCLyXfbjNDb6AFHElyX5c935folw4%3D)
0
0
0
浏览量0
九久九

k8s中prestop钩子执行命令后的行为?

优雅停机,关于k8s可配置的prestop钩子。例如我采用exec执行命令行的形式,命令行执行正常返回0之后,k8s依然会等到宽限期到达才会删除pod而非是exec命令执行成功后立刻删除pod 在k8s的官方文档中没有找到这个问题的解答
0
1
0
浏览量12
九久九

客户的服务器上的所有网站在手机端链接后加上.doc就打开别人的网址?

看一下HTTP服务上面是不是被修改了配置吧。 如果没有就是得看你后端服务是不是有做单独的文件服务?
0
0
0
浏览量0
九久九

php在循环中使用 SHOW TABLES LIKE 'table'; 为什么会出现 2006, MySQL server has gone away?

框架:thinkphp 场景:在脚本中循环查询数据并处理,查询数据使用的model中含有分表逻辑,若分表不存在则自动创建分表。 model代码: class TestTableModel { public function getTable($date) { $r = Db::query('show tables like "test_table_{$date}"'); if (empty($r)) { // 若表不存在,则创建 Db::execute('创建 test_table_{$date} 表'); } // 使用Db对象 return Db::table('test_table_{$date}'); } } 脚本代码: $date = '20230506'; $page = 1; // 分页页码 while (1) { $db = (new TestTableModel)->getTable($date)->page($page)->select(); ++$page; // 进行一些处理 (......省略) } 这个循环只要一执行就瞬间报出 2006, MySQL server has gone away 的错误。最一开始我以为是和mysql的连接超时导致的,但后来将model中的 show tables like 这句去掉之后,代码就能正常运行了,而且运行很长很长时间也不会报错。 调整后能正确运行的model: class TestTableModel { public function getTable($date) { // 使用Db对象 return Db::table('test_table_{$date}'); } } 所以现在的问题就是,为什么加上 show tables like 这句查询就会导致 2006, MySQL server has gone away ? 然而如果这个model不在循环中使用也不会报错,而且在mysql中执行show tables like速度也很快,有点搞不懂。当前查询中的分表是存在的,而且数据库的数据表总量也就近百个。原因在哪里呢?
0
1
0
浏览量14
九久九

StringRedisTemplate无法注入?

我在使用StringRedisTemplate时出现了错误,日志信息如图: "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241015/7fadfdb451266ab374e8e676a8b47eb3.png) 看样子是注入失败,可是为什么会这样呢? 我的springboot版本是2.7,redis-data版本2.7. yml文件中的配置信息如下: redis: database: 1 host: 192.168.234.130 port: 6379 timeout: 5000 password: 123456 好像什么配置都有了,版本应该也不会冲突。。 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241015/fa730248e1f2d7dfe24c51a7c8cebc67.png) 大佬们求解啊。。
0
1
0
浏览量12
九久九

mysql 8.0 dump命令导入为什么无效?

你要导入还是导出 * 导出 : "mysqldump" * 导入 : "mysql"
0
0
0
浏览量0
九久九

有没有比较好的学习 shell 的文章或文档吗?

能比较系统地介绍 shell 的语法,种类可以是大众的,但不用太深入原理,能应付日常的应用自动化脚本的编写就可以了
0
1
0
浏览量11
九久九

请教TS的泛型条件约束问题?

演示代码:"https://tsplay.dev/N5jo0m" (https://link.segmentfault.com/?enc=xHYb14bIdHYJJf7BB1mfxQ%3D%3D.BRY0g6o%2BeQRtsuvL7KvGNHIJl0SnBJWXvkTyq3IjR%2Fc%3D) interface Base { name: string; age: number; }; interface FixedInstance extends Base {} interface FollowInstance extends Base {} type NameType = "fixed"|"follow"; type FixedName = "fixed"; type FollowName = "follow"; const data: NameType = 'fixed'; type myType = typeof data; type isFixed = myType extends FixedName ? true : false; // true type isFollow = myType extends FollowName ? true : false; // false // -----------cut--- function sellect(name: T, data: U) { return { name, data }; } const { name: myName, data: myData } = sellect("fixed", { name: "levi", age: 18 } as FollowInstance); type dataType = typeof myData; type dataisFixed = myType extends FixedName ? true : false; // true type dataisFollow = myType extends FollowName ? true : false; // false 从"cut"以上,可以看到都是正确的,问题在函数"sellect" * 我需要根据第一个参数"name: T"去判断第二个参数"data"的类型 * 提供的"name"是"fixed"就限制"data"是"FixedInstance",否则就限制为"FollowInstance" 问题1:我在"sellect"参数传参的时候故意" as FollowInstance",在TS中并没有报错 问题2:在拿到的结果中"dataisFixed"是"true",但是我传过去的是"FollowInstance"
0
1
0
浏览量12
九久九

怎么实现类似的背景效果?

你说背景底色蓝色渐变?那不是应该设计给你的背景图么?至于你看到右侧类圆半透明的,你把面板设置0.5半透明度来达到效果。你想复杂了 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241013/18dc874eea7d6fa30e1bd7db3d75b703.png)
0
0
0
浏览量0
九久九

Socket连接中支持发送哪些数据类型?

Socket连接中支持发送哪些数据类型
0
1
0
浏览量209
九久九

遇到一个 ts 的问题,有更优雅的解决方案吗?

因为 "const str = '2D'" 定义的是一个常量,不可能被修改,所以 str 的类型能自动推断为 "'2D'" 而 "const obj = { bbb: '2D' }" 中的 "bbb" 是一个可变成员, 所以只能往泛类型上推导成 "string" 这种场景最好用枚举 enum VmsType { '2D' = '2D', '3D' = '3D', lpo = 'lpo', lips = 'lips' } function func(type: VmsType) { console.log("🚀 ~ func ~ type:", type); } const str = VmsType["2D"]; const obj = { bbb: VmsType["2D"], ccc: 'test' }; // ok func(str); func(obj.bbb); // Argument of type 'string' is not assignable to parameter of type 'VmsType'. func(obj.ccc);
0
0
0
浏览量0
九久九

如何解决Vue脚手架安装时遇到的问题?

淘宝NPM镜像的老域名证书已过期,换到的“新”的域名上面就好了。 "npm config set registry https://registry.npmmirror.com" 切换好镜像之后在使用 "npm install express" 安装依赖就可以了,不需要使用 "--registry" 参数来指定镜像地址了。 *** 另外,通知跟换域名的公告已经发布2年多了……如果是刚入门的话,不建议直接抄CSDN上面的文档直接用,很多都是好多年前的文章了,得自己评估一下的。最好是先看官方的文档,有看不明白的,不了解的再去查其他人的笔记文章学习。 "【望周知】淘宝 NPM 镜像站喊你切换新域名啦" (https://link.segmentfault.com/?enc=fH9M6s7qhgHXGec7K3AG8Q%3D%3D.Qy1nbjNo2ed%2BPz41J%2Fy3XCflBeNQ%2F1mlyqtUQAJ6PBcZclogdU5A0Qdzk9b6Ll2b) "淘宝镜像老域名SSL证书已过期" (https://link.segmentfault.com/?enc=zRPDeEM9lGv87lIYFeZIOw%3D%3D.xe9eTg0nrkiLiPkFfUV6MNVCVYpM9pKYLbvpaMupifa0bjz3tCRwsaee3W5xl%2BhDP0v3azmPY89vdpkYY4f7Eb6Vjov1LQRei6iWoQRaVG8%3D)
0
0
0
浏览量0
九久九

如何播放二进制音频流且能拼接长度?

"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241012/f4f7b3dd0c43cf2c15ef8904bd8ea26a.png) 如图通过ws能一直接收二进制音频流直到结束 // * 将所有二进制流推进一个数组 - audioArray const blob = new Blob(audioArray, { type: 'audio/mp3' }) new Audio(URL.createObjectURL(blob)).play() 此代码能整合所有音频流并播放,但这种方式需要等待传输完成后才能播放 如何能在接收第一段音频流时就开始播放,后续到达的流继续附加在后面播放 求各位大佬提供个思路(如果有代码就更好了~)
0
1
0
浏览量122

履历