设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7323|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " o5 }  r1 F5 T

9 b8 A% B. o: S( ~1 G8 L本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 U$ P5 X2 t, r- M8 V/ M$ r# s# b, J以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." f0 f/ Y% F- ~) ^2 y* N$ u8 p+ C
swarm.SignatureNotFoundException
9 p( o- S! d5 p8 p        at swarm.Selector.<init>(Selector.java:76)  k8 n6 i! Q( k  G# r" Q, K7 W
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). g7 Y: v; v% z/ |; D- \  x
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ Y% Z* V9 Z2 v$ T& d
% V& O! K  ^3 {3 v7 y( |& t( x
import swarm.objectbase.SwarmImpl;
4 J2 H2 b5 I% ~4 dimport swarm.objectbase.Swarm;
* a+ s5 W3 ^/ I% Z6 Y# c# |import swarm.activity.ScheduleImpl;
/ t8 K$ W/ S2 vimport swarm.activity.Activity;, b; K8 l8 O" f; d3 d
import swarm.activity.ActionGroupImpl;
+ d% I$ ~2 L* _- eimport swarm.collections.ListImpl;
$ L6 W6 F" Q) Z6 l1 o. {8 f9 Kimport swarm.defobj.Zone;
% d; C6 a/ j9 R8 l5 y) k% @import swarm.Globals;
6 ?8 ^3 T) Q' G( G8 D) r2 ]1 Pimport swarm.Selector;/ m/ B" a1 c8 r  t5 }
import swarm.activity.ActionGroup; % M" Y' x/ ~# d
class Agent {! {& K# O$ ^0 m
        char id;
* \( f. F  l- y. k" F
0 K. Q* Q, j! X' E        Agent(char id) {
  }/ \3 M4 s; W                this.id = id;* \7 v* J% v/ F+ s
        }
9 h* s/ k8 v7 H3 t& Y8 X% Z( \# b9 }- U
        public void agentStep() {$ x8 \, K& p- e, o1 W' z6 W
                System.out.println(id + ":" + Globals.env.getCurrentTime());, _: o. n7 C* @4 l$ s( M
        }
2 y# u: K1 X% ~0 h}1 T3 W, n* c# l

( @7 m) L9 u- f  E  npublic class ActionGroupDemo extends SwarmImpl {3 R) I# F! c$ g* e9 t5 g! L3 O! w7 y
        ScheduleImpl schedule;  c- S9 Z3 `; z5 F! q
        ActionGroupImpl actionGroup;  Z9 C8 `: w: b2 r+ ]% _5 n
        ListImpl list;
' O% G# B7 {) H* d6 B# K+ Z        char Id = 'a';: g: f* g9 D1 D% o$ D; L

+ {: M% r$ s; o3 B$ s# L9 U! r1 u        ActionGroupDemo(Zone aZone) {* G' N. Y( T. Y2 ^
                super(aZone);
9 w( X  O1 _4 z                list = new ListImpl(aZone);& C, l7 K, Q6 R+ t
                swarmSetp();
- ~* c; \  S6 w2 n9 }) l8 L                actionGroup = new ActionGroupImpl(aZone);6 z; ~+ S' h9 ~) F2 M7 _3 @5 \% H. w
                schedule = new ScheduleImpl(aZone);
: V$ {  _0 g0 s  f                try {# Y( F9 M" ~) \7 W( d; S1 X
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: N' h3 q+ G5 n) K2 C
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- D" o9 `2 v2 P, d- q- z7 p
                        ' H0 x0 U/ k' A& I% t9 `
                        actionGroup.createActionForEach$message(list, agentSel);
* X+ G, c2 ^5 Q, E& I                        actionGroup.createActionTo$message(this, swarmSel);
* V' n' w$ J9 L' C                        schedule.at$createAction(0, actionGroup);
  O7 w# `9 @, T' |4 x                        schedule.at$createAction(1, actionGroup);
9 u: L- ~; z$ ?# W* Y1 ?1 Y) R                        schedule.at$createAction(2, actionGroup);: [. `% v, k) {0 W8 B0 Q1 g5 S

8 ]! o5 n: ?+ q7 l                } catch (Exception e) {
2 g2 z- l" Y! G                        e.printStackTrace(System.err);
; Z6 r& I5 z& X3 a                        //System.out.println(e);
4 G& O1 c8 t1 R' t4 S" w                        System.exit(1);: l( s( s3 c+ N: H- m+ m0 S
                }
. Z6 ], a8 O7 ^& F; g+ b9 L5 N" t5 X
: u+ K. e1 j0 H; J0 M
        }
! A9 v, \5 q/ G/ V2 E) A  }3 N0 u) h' A! W
        private void swarmSetp() {
/ T* R# g$ X" T7 X% C8 d, n                list.addLast(new Agent(Id));+ L/ e8 w0 A' Z! p7 d* \- x  j7 a
                Id++;: M' Z5 F, d" H+ l+ `6 x
        }) |# G4 c8 R7 G  ]' d' ^9 I

$ O( d0 k" f2 Y8 W- S( F. ?* H        public Activity activateIn(Swarm context) {6 v2 w$ I- }- F/ ~
                super.activateIn(context);
5 L1 m/ M! D5 i7 T9 V- `                schedule.activateIn(this);  Y; n3 |+ c/ U, V& ~; K5 H
                return getActivity();
6 Z, w) z& @) v9 i. ]- [! K' T% E        }
4 m& z2 q, z6 X. L* u7 ~
5 E, H* ^" m. @# n7 e        public static void main(String[] args) {0 q7 m/ i2 e1 P; z6 m
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. O' u2 v! H0 d: c+ [4 c                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" h) b4 x, g4 p& u
                swarms.buildObjects();- A+ B$ `" |. q9 o7 Y- q
                swarms.buildActions();! D% d" E2 [1 e0 d- C, R
                swarms.activateIn(null).run();
/ }& h7 {$ C* A9 P& q6 T        }, h% G+ y: W1 f) @5 T
1 C. [& K& M; K0 z: \
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-26 14:10 , Processed in 0.017210 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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