小编jgo*_*gon的帖子

Cabal在窗户上安装pcre-light.额外包括dirs/extra-lib-dirs无效

我正在使用MinGW + MSYS,

我添加了额外的包括dirs,extra-lib-dirs,但似乎没有任何帮助cabal找到pcre库.以下是我尝试过的一些命令行,以及它下面的一些示例输出.

cabal install pcre-light --extra-include-dirs='C:\Program Files (x86)\GnuWin32\include' --extra-lib-dirs='C:\Program Files (x86)\GnuWin32\lib'
cabal install pcre-light --extra-include-dirs='/C/Program Files (x86)/GnuWin32/include' --extra-lib-dirs='/C/Program Files (x86)/GnuWin32/lib'
cabal install pcre-light --extra-include-dirs="/C/Program Files (x86)/GnuWin32/include" --extra-lib-dirs="/C/Program Files (x86)/GnuWin32/lib"
Run Code Online (Sandbox Code Playgroud)

我一直在这方面得到一些东西:

Resolving dependencies...
Notice: installing into a sandbox located at C:\Users\user\src\DBSite\dbsite\.cabal-sandbox
Configuring pcre-light-0.4.0.3...
Failed to install pcre-light-0.4.0.3
Last 10 lines of the build log ( C:\Users\user\src\DBSite\dbsite\.cabal-sandbox\logs\pcre-light-0.4.0.3.log ):
[1 of 1] Compiling Main             ( C:\Users\user\AppData\Local\Temp\pcre-light-0.4.0.3-9072\pcre-light-0.4.0.3\dist\dist-sandbox-6710ae14\setup\setup.hs, C:\Users\user\AppData\Local\Temp\pcre-light-0.4.0.3-9072\pcre-light-0.4.0.3\dist\dist-sandbox-6710ae14\setup\Main.o )
Linking C:\Users\user\AppData\Local\Temp\pcre-light-0.4.0.3-9072\pcre-light-0.4.0.3\dist/dist-sandbox-6710ae14\setup\setup.exe ...
Configuring pcre-light-0.4.0.3...
setup.exe: Missing dependency on a foreign library:
* …
Run Code Online (Sandbox Code Playgroud)

haskell mingw cabal

7
推荐指数
1
解决办法
1210
查看次数

压倒一切的麻烦

我的代码看起来有点像这样,但这是一个简化版本:

A类:

public class A{
    public void testArgs(A a){
        System.out.println("A");
    }
    public void test(){
        System.out.println("A");
    }
}
Run Code Online (Sandbox Code Playgroud)

B级:

public class B extends A{
    public void testArgs(B a){
        System.out.println("B");
    }
    public void test(){
        System.out.println("B");
    }
}
Run Code Online (Sandbox Code Playgroud)

主要:

public class Main{
    public static void main(String[] args){
        a(new B()).testArgs(new B()); // prints A
        (new B()).testArgs(new B());  // prints B
        a(new B()).test();            // prints B
    }
    public static A a(B b){
        return b;
    }
}
Run Code Online (Sandbox Code Playgroud)

为什么a(new B()).testArgs(new B())打印A不是B?是否有某种方法来解决/修复此问题?

编辑:
澄清:

我真正想要的是使用A调用时运行的超类方法,以及使用B调用testArgs时要运行的子类方法.

铸造也不是一种选择,因为在实际的代码,这里不像,我不知道这个方法调用的结果是否实际上是B或没有. …

java methods overriding

6
推荐指数
1
解决办法
102
查看次数

标签 统计

cabal ×1

haskell ×1

java ×1

methods ×1

mingw ×1

overriding ×1