V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Sayuri
V2EX  ›  开源软件

对 LGPL 的软件库创建子类并直接导出软件包发布,是否一样需要用 LGPL 开源?

  •  
  •   Sayuri · 12 天前 · 408 次点击

    如果有某个软件包 foo 是 LGPL 的,软件包的大体是

    export class Foo {
    	someMethod() {}
        
        private somePrivateMethod() {}
    }
    

    而我发布一个软件包 @my/foo ,大体是

    export class MyFoo extends Foo {
    	// @ts-ignore
        private somePrivateMethod() {
        	// 这里改动了一点
        }
    }
    

    这种情况下,这会被认为是一个独立的软件包,可以以任何协议发布,还是一个 foo 的衍生品,从而必须以 LGPL 的许可证发布?如果这个问题被换成 GPL 呢?

    4 条回复    2024-05-23 16:39:33 +08:00
    ysc3839
        1
    ysc3839  
       11 天前 via Android
    有一种说法是,LGPL 要能让用户自由地替换掉 LGPL 部分代码。
    上述说法是否正确我不知道,仅供参考。
    lqs
        2
    lqs  
       11 天前
    @ysc3839 是的,所以对于需要打包发布的 js 代码不太适用
    Sayuri
        3
    Sayuri  
    OP
       11 天前 via Android
    @lqs js 只是方便举例,如果换成 C++ Java 呢?
    ysc3839
        4
    ysc3839  
       11 天前 via Android
    @Sayuri C++一般是把 LGPL 部分做成 dll/so 等动态链接库。Java 的话单独分开 class 文件理论上是符合的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2439 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 15:47 · PVG 23:47 · LAX 08:47 · JFK 11:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.