设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10984|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . N. @* }$ h8 b$ a* R9 w4 x

# I/ p" k- U( }1 L; o0 Y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" M' E4 K# \5 v3 l- n' B$ S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 q4 b$ M7 O3 m# w
swarm.SignatureNotFoundException
+ O' j/ K+ `- q& Z( E% `8 {0 ^        at swarm.Selector.<init>(Selector.java:76)
. O  U1 S: v: [  N        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" R" d4 w' o! a7 K. @( [        at ActionGroupDemo.main(ActionGroupDemo.java:67)* v: `  h, r6 i

( f; ]* r1 Z" e9 p1 L
+ L+ o7 r7 o6 c# nimport swarm.objectbase.SwarmImpl;
$ h* L6 ~2 p$ q: b/ jimport swarm.objectbase.Swarm;
5 f) x- \0 g7 c" G  y6 D6 vimport swarm.activity.ScheduleImpl;6 ?/ b7 Z; f6 }$ G% T  w, L
import swarm.activity.Activity;
  S) X: ~5 u7 p( r1 Timport swarm.activity.ActionGroupImpl;
, [# J& L* s; ~1 Limport swarm.collections.ListImpl;6 P/ }0 ]3 h: l& S4 X& E' I" d
import swarm.defobj.Zone;
, e' D* c- [% [: U* ~4 qimport swarm.Globals;, h/ r/ z  @& U6 j$ S1 _
import swarm.Selector;
+ Q' F- r+ G6 E0 q  R. |import swarm.activity.ActionGroup; & c' c, _9 a3 g* }) q
class Agent {
: q& M% N7 L# b        char id;
4 L0 d' i/ l3 H" f+ u
9 K, y+ v2 |" A" E" N. b        Agent(char id) {6 O* l/ R1 `3 W, q1 k
                this.id = id;' m) H7 v' S' H. k+ Q6 S+ ~% A8 P1 A
        }' c1 E7 u1 c5 O, A6 k
/ W0 _. r* n7 n6 m
        public void agentStep() {3 ]: I: R3 C& u; a/ _' b7 O
                System.out.println(id + ":" + Globals.env.getCurrentTime());) U9 x; E8 g7 S9 T3 R
        }1 y( ?# y5 d$ _$ x1 k
}# v) H+ K& u. T( Q$ X

) q1 I7 g+ ~, x% Epublic class ActionGroupDemo extends SwarmImpl {
$ z! X1 P% m' L        ScheduleImpl schedule;
$ n8 Q( g& [! p: {9 w: F- \9 L        ActionGroupImpl actionGroup;
; }- U' S! ?3 b% u3 Z        ListImpl list;
2 y/ g+ W9 R# I' E/ d+ i        char Id = 'a';
: G/ K* I6 U8 G/ Y8 t5 g
! T) c8 q9 E5 k7 [. u5 p$ E        ActionGroupDemo(Zone aZone) {
7 Z: i2 u" l% W5 k7 D                super(aZone);4 C; L! Y3 `3 C5 M
                list = new ListImpl(aZone);
7 B( Q5 T( S6 Y1 E                swarmSetp();
" V( J& e6 w7 ^7 {8 s8 S                actionGroup = new ActionGroupImpl(aZone);/ |+ v8 [. ]- G; y
                schedule = new ScheduleImpl(aZone);& D5 r" n2 b8 w0 r3 S
                try {8 A4 l7 d( b# |8 _* H7 Z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' V0 z6 f! o* m7 V# G! [# ]  a* C  y
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* z1 |5 n8 t0 ]- r) S9 ?5 s6 `  [                        4 S1 i2 H& Y. Z; J  N- T+ h$ Z2 [
                        actionGroup.createActionForEach$message(list, agentSel);
( `! c1 Z. j# S& Z& p                        actionGroup.createActionTo$message(this, swarmSel);
' p" e  @5 Y% k3 m  d                        schedule.at$createAction(0, actionGroup);
% F$ A- G  B' C3 r, A* }/ H                        schedule.at$createAction(1, actionGroup);
3 ^: {2 b+ E; X                        schedule.at$createAction(2, actionGroup);) M- W) M) K! @

3 {( j& o% O/ F% t                } catch (Exception e) {
+ V' _# K, J# s' Z' K                        e.printStackTrace(System.err);
# W: l  S: S: j) D! i                        //System.out.println(e);# Q4 v( A/ k1 _1 B* @
                        System.exit(1);
' ]  _5 f9 a* D9 }                }3 G; O+ z3 }5 ]( b, x
, |3 {7 c$ \8 `" y
2 k7 ]$ v. N3 G5 i  s
        }
/ E2 G+ B/ G0 r$ G+ z# I" C, {7 @$ `# i0 f0 L) n
        private void swarmSetp() {
) [! u# h- q3 Y                list.addLast(new Agent(Id));
, x4 s2 g2 d$ Y- G4 u' u1 ^1 P                Id++;* B) w9 \8 Q! _8 L
        }& e) u- O, u( f" A3 Z8 H% G* f/ _

* ^0 K" i1 _; [* s7 B7 t        public Activity activateIn(Swarm context) {
7 S" K' N$ ^3 n/ [                super.activateIn(context);3 V7 k3 o6 h$ D% Z" v6 w/ ]) N
                schedule.activateIn(this);
9 r5 R& o8 x1 A1 G  P# `                return getActivity();; [3 I) s  W, M' [, b* W4 t* m
        }! f( y$ I* I. J( k& W
! a, f/ F( b+ n. H
        public static void main(String[] args) {
' b5 P5 H4 [8 d  v7 d/ |- \. B                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) C$ l7 M. M" A5 N- x" U
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. V* Q& x  I7 s5 z) w9 h; h
                swarms.buildObjects();
* c4 W& _( P) F* P: I2 B                swarms.buildActions();4 [6 u2 c5 H& B7 [, I' J; b
                swarms.activateIn(null).run();3 M6 N# E; v  l( W2 R2 F2 V
        }
  V! T% N. P* W7 p) Q  W; G; q- i* h3 z1 e8 Z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-29 13:12 , Processed in 0.016195 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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