使用SWIG将C++封装到java unSimuldLink错误:HealEnjn.NexTestTest.()j

使用SWIG将C++封装到java unSimuldLink错误:HealEnjn.NexTestTest.()j,java,c++,swig,unsatisfiedlinkerror,Java,C++,Swig,Unsatisfiedlinkerror,我一直在尝试在我的项目中使用SWIG。我好像错过了什么。请帮忙。根据本教程,到目前为止我所做的工作: 是: 1.使用Visual Studio创建了header.h class Test { public: Test(); ~Test(); void showNumber(); private: int number; }; 2.创建的swig接口 /* File : Header.i */ %module Header %{ #include "Header.

我一直在尝试在我的项目中使用SWIG。我好像错过了什么。请帮忙。根据本教程,到目前为止我所做的工作: 是:

1.使用Visual Studio创建了header.h

class Test {
public:
    Test();
    ~Test();
    void showNumber();
private:
   int number;
};
2.创建的swig接口

/* File : Header.i */
%module Header

%{
#include "Header.h"
%}

/* Let's just grab the original header file here */
%include "Header.h"
3.在CMD运行中:

swig -c++ -java Header.i
4.创建SwigTest3.cpp

#include "Header.h"
#include <iostream>
Test::Test() {
    number = 12;
}
Test::~Test() {
}
void Test::showNumber() {
    std::cout << "Number: " << number << std::endl;
}
7.运行main.java让我

Hello
Exception in thread "main" java.lang.UnsatisfiedLinkError: HeaderJNI.new_Test()J
at HeaderJNI.new_Test(Native Method)
at Test.<init>(Test.java:38)
at main.main(main.java:13)

所有文件都在同一个文件夹中。请告诉我我做错了什么。

在步骤3中,swig创建了一个*\u wrap.cxx文件

在步骤5中,您只编译.cpp文件,而不是生成的.cxx文件

Hello
Exception in thread "main" java.lang.UnsatisfiedLinkError: HeaderJNI.new_Test()J
at HeaderJNI.new_Test(Native Method)
at Test.<init>(Test.java:38)
at main.main(main.java:13)