设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12677|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 s- l! W0 v% b% N: q8 R3 M  O/ k7 X3 ~& F
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: Z; g' L! f* k! U, m/ h* g* j以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: |8 t) Q4 q% K8 p, ?5 h
swarm.SignatureNotFoundException& q  q4 r/ g* N+ S+ x
        at swarm.Selector.<init>(Selector.java:76)( h6 Y0 j: S' d0 k% x" {
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  R- \$ L2 u  A& p2 X- v6 h
        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 D( t5 V! c& B# Y7 _" e
+ ~) f' [# @* O
" D9 g6 W3 f! U0 b. C# @$ G8 O8 o
import swarm.objectbase.SwarmImpl;  ?& ?9 \* K6 m. F4 c
import swarm.objectbase.Swarm;9 x5 x2 E: O3 _; I5 C# L- ^) z
import swarm.activity.ScheduleImpl;
0 j  @3 o0 F( w8 i2 L7 qimport swarm.activity.Activity;
2 p5 E# M" M8 F' q4 H! K; |import swarm.activity.ActionGroupImpl;
) {3 S7 l; z0 a4 i2 z! c  y* qimport swarm.collections.ListImpl;2 c; ^, D! [: o2 O/ v& A/ v
import swarm.defobj.Zone; 3 R& P2 A  ^+ b3 J
import swarm.Globals;
( x+ x: Q  O! T$ d3 Vimport swarm.Selector;$ P+ o) Q6 m6 c+ _/ A; Y- k
import swarm.activity.ActionGroup; 1 A2 O) o0 L4 d1 }$ c, ?2 x& o
class Agent {
) K, Q7 e9 l" H+ a4 `2 Q        char id;
" I1 d* s; V: U; b# o4 l# H0 d
6 s7 S4 B- r) w, X: ^        Agent(char id) {7 _# Z* D- s& d) g
                this.id = id;
1 S/ W* R0 d, a0 H/ n        }# L  U) h, D  b

2 B' ~* i3 B% V2 H8 T        public void agentStep() {3 D6 a. t8 y1 t4 w1 J: P/ K
                System.out.println(id + ":" + Globals.env.getCurrentTime());
. n) P7 q+ u  x        }
2 i& b) P: }7 E* l0 u& \$ B}# c$ ~9 A, S# g* l7 Q- q0 g  u. S
: N2 ?0 m1 Z& d( Q% ]
public class ActionGroupDemo extends SwarmImpl {
  T( m0 m! P$ ^* L* n        ScheduleImpl schedule;
$ g# H4 d5 ~: @4 j2 x# ^        ActionGroupImpl actionGroup;0 O8 w, l/ I3 B; B: U3 U% u; X
        ListImpl list;
6 b* z7 P4 r4 H+ F, i/ m        char Id = 'a';
; m% Y- X/ q& W  o8 {+ n4 r6 t2 M
        ActionGroupDemo(Zone aZone) {
7 \/ d. S) W$ [; d. q3 t' m                super(aZone);& a" Q9 O6 m( v; Q, j
                list = new ListImpl(aZone);
/ v$ {' P) S; H3 a5 X& m, w                swarmSetp();, t; r5 r& }0 i# h& {3 ^6 x
                actionGroup = new ActionGroupImpl(aZone);0 g+ C8 [; @( X0 r$ G. x
                schedule = new ScheduleImpl(aZone);
% C7 U2 l0 k, _4 T* h                try {* ~1 W" X) w% C( X! c4 n& I% G
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ L! T* u( Q6 o8 X2 V0 u                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( I7 O9 b+ v& ^8 F$ |7 [4 f
                        
4 k6 g$ k: [3 j# t8 u( ^$ C                        actionGroup.createActionForEach$message(list, agentSel);3 O0 r1 G" t' l  ^" a' z8 i
                        actionGroup.createActionTo$message(this, swarmSel);% O( K2 U$ z; H/ v0 T, z4 T1 T9 Q
                        schedule.at$createAction(0, actionGroup);
5 a) \  p$ T, l! J+ H& @4 q                        schedule.at$createAction(1, actionGroup);* h* k$ E. b6 F+ d
                        schedule.at$createAction(2, actionGroup);
; B0 J. I/ o% s/ @' p+ n& w$ J5 Q% n
                } catch (Exception e) {7 w! t0 `% c/ g& c8 f
                        e.printStackTrace(System.err);
' {! E* w* \: |# A( C) q+ C" x                        //System.out.println(e);( b; g) @- F& D; d$ `0 c3 [
                        System.exit(1);
. R- W. T# t5 f; |                }
% f1 a- {9 [5 h# ~2 V6 l
" S) r: t* ]6 u9 |& Z6 Q5 \1 Q9 f; {; g! e; v& B; a. R
        }1 [: g5 G8 f* B3 o2 F8 u4 z; _
3 Q- u' K9 t- {' V
        private void swarmSetp() {
+ U+ }' q9 X6 V& m+ ]                list.addLast(new Agent(Id));
( {5 e2 z& d/ ~4 [" u  F                Id++;
5 s) ?* s% }# l6 l/ h        }# m) ?+ Y9 A( [
2 {' H$ b  T' u3 L& G
        public Activity activateIn(Swarm context) {5 L9 s* Y0 V  W* I! Z' f
                super.activateIn(context);% u# ?' m& B' n7 |" Q
                schedule.activateIn(this);
. b, I; p) O  ]$ T: C, o' `7 p$ k                return getActivity();2 I, a* E. z8 }0 b  k
        }3 i( @* u, I( ~; y! a- d2 E

$ g" k! v% r0 p% N9 x. \- h        public static void main(String[] args) {5 _  p5 ?/ G6 l
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 p# W2 V/ M1 W! _% M0 g1 m/ ^
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- J* Z% h2 y* X: ?8 @
                swarms.buildObjects();
8 _+ \  `& H  K0 c: f5 @                swarms.buildActions();" V8 ~/ D2 s( e( @
                swarms.activateIn(null).run();
- m2 Z+ y$ _! }4 V6 |1 W        }+ S  j* H$ O% Y

" ]8 L# s$ v  v}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-15 18:56 , Processed in 0.017499 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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