问题标签 [module-packaging]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
238 浏览

python - 需要适当的 Python 包目录结构和良好 API 设计指南

我正在发布一个 python 包,并且对包装的各个方面感到困惑。

首先,我的目录结构如下:

目前__init__并且setup无人居住。sample.py是包的任何用户都想要导入的文件。它包含不同功能形式的 api:foo1, foo2.

utils.py包含smaple.py. 后者包含一个声明import utils

放置在该目录下的任何脚本sampledir都可以轻松地import sample将小说用作sample.foo1(). 走出这个目录,我可以调用import sampledir,但不能调用import sample,这是预期的。所以我需要做from sampledir import sample。这会导致import utils行中的错误sample.py

在某些地方,我看到import .utils同一目录中的文件。但是当我尝试这样做时,会导致语法错误。

为什么我不能sample.py从外部 sampledir 导入?

此外,什么样的目录结构将允许已安装软件包的用户简单地调用import sample后跟sample.foo1(),而不必执行from sampledir import sampleor import sampeldir.sample。例如,在使用 HTTP 库requests时,只需导入它并调用requests.get(url). requests.requests.get('url')不是必需的,就像在urllib. 如果我想命名包,正确的目录命名和安排是sample什么?

0 投票
0 回答
727 浏览

python - 如何捆绑 Python 模块而不发布它?

我已经从

http://www.piersharding.com/download/python/sapnwrfc/

我已经构建了它并且工作正常。现在我想在另一台机器上使用相同的模块。我阅读了一些 Python 捆绑以及如何发布模块以便其他开发人员可以使用 easy_install 或 pip 安装它。但这不是我想要的。它不是我的模块,所以我不会代表真正的作者发布它。我只是不想每次我想在另一台机器上使用它时一次又一次地构建所有东西。

文件夹结构是

__init__.py 模块中有几个类,但看起来主要代码在共享库中。所以我当然可以将相关部分复制到目标机器上(前提是平台适合 so 模块的平台),但我很难相信这是正确的方法。有人可以帮忙吗?

0 投票
1 回答
250 浏览

javascript - .min 或 src 作为 node_module 的 package.json 中的“主”文件

我正在为浏览器(JS,CSS)编写一个到目前为止没有依赖的库。现在我至少有一个依赖项,我正在考虑是否将 deps 包含到构建中。

假设我的用户使用 CDN - 当然我的库的缩小文件应该包含依赖项。但是像 webpack 这样的模块打包器呢?如果有人require/ imports lib,package.json应该指向src条目还是缩小文件?无论如何,模块捆绑程序不会安装并包含依赖项,因此缩小的文件将是(依赖项的)重复代码吗?

这方面的最佳做法是什么?

即,我构建了一个将依赖于 turfJS 的某些模块的传单插件。Leaflet 是 peerDependency 而 turf 是依赖项。

0 投票
2 回答
481 浏览

python-2.7 - 如何从单独的文件夹中导入多个类对象?

我为我的相关文件构建了一个具有以下目录结构的python 2.7应用程序。cal 方法如何位于不同的文件夹位置?

我已经成功地通过使用以下方法为从 main_code.py 引用的一个类正确地做到了:

但是,如果通过使用 import 语句对位于 main_code.py 引用的单独文件夹中的另一个类尝试类似的模式

我得到错误:

ImportError:没有名为 audit_data.audit_file 的模块

关于我可能会忽略什么的任何想法和/或关于我需要发布哪些进一步详细信息以帮助找到我的问题的解决方案的指导?

0 投票
0 回答
305 浏览

python-3.x - Python 3,如何为 pip 可安装包和可运行脚本导入模块?

我编写了一个 Python 3 控制台应用程序,它的结构与下面的示例相同。我想知道我应该如何导入模块以实现所需功能部分中指定的行为。

在哪里:

  1. spam模块有main功能
  2. 模块导入模块中的spamHam类ham
  3. 模块导入模块中的hamEgg 类eggs
  4. 两个__init__.py文件都是空的
  5. 导入的基本setup.py文件setuptools

所需的功能

  • 我希望能够将控制台应用程序上传到PyPi。然后它可以作为一个包下载pip,并在终端中执行。

    /li>
  • 我还希望能够将它作为 Python 脚本运行。

    /li>

我发现,我认为是一种 hacky 方法来实现这一点。

(hacky)解决方案

为了获得已安装的包和 Python 脚本功能,我添加了一个try: ... except: ...可行的方法,但它似乎不是正确的方法。

如果我只保留相对导入,并尝试将代码作为 Python 脚本运行,我会得到:

如果我离开常规导入并运行控制台应用程序,则会发生类似情况:

文件

__init__.py文件为空

spam.py

ham.py

eggs.py

setup.py

0 投票
1 回答
227 浏览

python - 我们如何在 Django 中创建插件和 Play 架构?

实际上,我想在 Python Django 中创建一个即插即用的架构。我有一种不同的刮板,我也在写更多的刮板。每当我构建一个新的爬虫时,我都必须再次在生产环境中发布我的 repo。我需要的是我只想插入新的爬虫而不实际再次部署我的代码。我已经使用了 GitHub 版本控制系统,但我需要一种更干净的方式。提前致谢。

0 投票
1 回答
17 浏览

java - 如何为 Play 商店签署 apk?

我已经在 adroid studio 中签署了一个应用程序并将其设为 APK,但无法安装在设备上。应用程序在我的模拟器上运行良好,但无法安装在设备上。

还没有尝试任何解决方案。