设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5091|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 N0 r' p* ~+ M; x$ ?5 v
# A: d8 @% V5 M( W- b4 _. f本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* A, C; ~4 ~) `8 N) k4 A/ [
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 u- \& F! F) X0 Cswarm.SignatureNotFoundException
# \& r* ^5 j" ?8 n. }: v  \0 v        at swarm.Selector.<init>(Selector.java:76)% r1 j1 X) Z( G* K7 @- x0 w' A# l
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. K* p/ P' p% @# d( x) z, J9 w        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 D( ?6 D8 u$ z! {" T3 i0 @7 t6 I+ O2 j3 @5 d* E) C1 T+ w$ x+ {$ S! L

: L, z& g7 t! T2 ^5 |7 f( q' Bimport swarm.objectbase.SwarmImpl;+ [8 v% W, [3 `, o* [
import swarm.objectbase.Swarm;
- d% M" b) k2 f5 r- himport swarm.activity.ScheduleImpl;* L! K8 v- V: l1 z0 t
import swarm.activity.Activity;* g2 z1 J+ `. O9 U
import swarm.activity.ActionGroupImpl;8 Y1 c; o, i/ X. g& K; X; p3 D
import swarm.collections.ListImpl;
5 _3 b: Y1 W+ Z( Y! K# Q4 iimport swarm.defobj.Zone;
% V: E# G( }  ?9 b& U7 q& Mimport swarm.Globals;
8 F1 f+ v" F( g% Ximport swarm.Selector;
$ ^; v! `( |+ ]  ?* u$ F* Rimport swarm.activity.ActionGroup;
* ^; H, ^( d& s) }; qclass Agent {
- G* y& t! c# K' ]2 k6 j4 a- ^        char id;3 V* o1 M) s' X: v! R) q: Y( D+ b
. G+ @9 a. n. l
        Agent(char id) {
8 Z, l: g  V- K7 W7 [                this.id = id;/ o0 N' Y7 [" L; I
        }
+ g- l2 k) u0 H6 q( X& z& i: f4 D5 }
& h6 L# Y. u( h! L8 x6 @- _( ^        public void agentStep() {; R/ e& G) n1 [/ v8 i$ q  x) H/ ]! a
                System.out.println(id + ":" + Globals.env.getCurrentTime());
. z/ _, T4 |- P        }
& r! u0 j' j! n" Y) g) L+ L( w}
- h7 b" B) n2 j0 e
$ g# o; C4 a' e  \5 Apublic class ActionGroupDemo extends SwarmImpl {
' P/ M5 a0 L2 K0 I        ScheduleImpl schedule;
  C6 z' v  g) a8 m+ ]        ActionGroupImpl actionGroup;
7 }& R5 w) d$ l9 M$ G# Z+ _+ Y        ListImpl list;
  E% P7 R1 X8 w0 Y) l, L/ p        char Id = 'a';% Q7 `9 i" k1 N- q; O  G

- ^! A& Q4 a. G& ~! `        ActionGroupDemo(Zone aZone) {
& ~( ]2 f/ m2 \- F                super(aZone);
0 L/ x4 I% Z' Y  i- I5 [                list = new ListImpl(aZone);
: ~- Q8 \: ^1 B; r" k# T                swarmSetp();8 ^8 M! Q; a' X* F/ g
                actionGroup = new ActionGroupImpl(aZone);
5 ^+ ]6 b' {* z' V                schedule = new ScheduleImpl(aZone);
3 ]5 h5 A' T/ s7 q                try {7 D$ ?: u# S7 A0 U
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; ?- O8 L5 `3 {6 a3 Y% c; k# T                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 ~. D4 }7 C0 B  [  M
                        4 O( m* \2 t/ F" Y6 j( v+ u
                        actionGroup.createActionForEach$message(list, agentSel);
1 Q0 ~; @. w4 }+ X' L; Y                        actionGroup.createActionTo$message(this, swarmSel);
5 S& r6 @9 V' [7 ?1 l                        schedule.at$createAction(0, actionGroup);1 {4 [6 ]# L) {, f) C/ @7 h
                        schedule.at$createAction(1, actionGroup);) f6 d1 N2 j) I; T; u$ ^  w* ~0 j
                        schedule.at$createAction(2, actionGroup);
6 X, L! U( C( F  n, ~8 u1 ~, Z0 a1 s1 J
                } catch (Exception e) {
1 u" R4 B5 i& @; v+ v* Q                        e.printStackTrace(System.err);
! d+ P! a! e: Y                        //System.out.println(e);
' ?; |& E! T' u                        System.exit(1);
" [) e4 {; W1 @4 \9 a: `2 @                }9 h2 A7 j$ S7 p. X( A+ W& ^

; _3 S) H  ^, }2 l- V
# J4 ^  s" }! U        }2 c' V" e5 S9 G( C1 ^

: o, Y$ b: g4 p( C+ _# ^0 W) j        private void swarmSetp() {& Y6 e/ s7 w7 Q
                list.addLast(new Agent(Id));; f' y" c' x. |) f; X
                Id++;
1 M7 R$ b9 U6 ^5 ~2 j3 c1 a        }
/ D* ~- r; U/ H9 \% @& t( N, ~; y/ h0 ^5 O. g$ ^) q
        public Activity activateIn(Swarm context) {
4 k8 @% n" S$ a3 j! p/ w                super.activateIn(context);
: X4 I/ d4 o- I                schedule.activateIn(this);
6 R9 e  G2 R( |( W6 q                return getActivity();
$ ], f  k; N& H* z        }
% q, w) Q& T0 ^& _& e1 z2 h0 h* W
        public static void main(String[] args) {
' m7 f- i  h, D% n                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 H7 y4 y& q& c$ }/ b- m
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);  R! x7 ]; m  _1 t- c8 ]
                swarms.buildObjects();
# Y/ `8 _$ V/ }; D8 `4 l7 V                swarms.buildActions();
! r) L  E* v. ], P8 M# k8 H                swarms.activateIn(null).run();
1 O8 k) A( ^; [8 m) s  U. d        }
5 i2 h! h2 I" |5 B* _3 e3 z" m" Y3 G# J% f, ~
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-11-24 18:38 , Processed in 0.015877 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表