设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12265|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! k8 ?* V1 w# d& }7 k
, e1 {" q: }$ |: O/ V2 P5 Y) h( y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ |; l/ f. c9 C/ u1 U
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 S) P! s- {( s' t& {swarm.SignatureNotFoundException
( f; o) i  k- d0 k        at swarm.Selector.<init>(Selector.java:76), E9 Q+ s+ \+ ]+ D. Y$ S
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), C' _0 g7 M: l7 C4 I) `) V( z  s
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- q/ @: g" [( ^+ v7 [, g4 f2 ?5 C, p3 R$ C0 E/ |5 ^& I0 H
* I$ w3 O6 m# ^7 X' a6 E
import swarm.objectbase.SwarmImpl;
! l7 X% d# ^' m. r4 A9 U# {  Iimport swarm.objectbase.Swarm;  s- R$ J6 N$ I! `# D. T
import swarm.activity.ScheduleImpl;, ?) X4 y8 `& A8 A
import swarm.activity.Activity;
9 \  X7 L7 o/ oimport swarm.activity.ActionGroupImpl;
3 {) t5 E; w: I* B& bimport swarm.collections.ListImpl;
$ t. `. p5 h- ]% Rimport swarm.defobj.Zone;
) t: N  x+ C  H- g* z5 z1 wimport swarm.Globals;
( Y$ m( h! S$ C8 p" R- wimport swarm.Selector;0 m; j& z. w  N( w
import swarm.activity.ActionGroup; 9 N2 p' u, S& G# W( ~
class Agent {
) X$ A4 d( w  d/ ~: p! Q0 p5 ^        char id;" g8 }; b* M- j6 ]
$ a, R0 ~3 h, ]4 N2 k6 @* N
        Agent(char id) {3 m; X8 u! ?; V& z! D
                this.id = id;
1 t, x% O$ m( s        }  O& {: F' E) R: s/ A5 a

' P5 w4 f8 y7 Y2 T$ R3 @5 O        public void agentStep() {
' x5 X6 ]- C7 @$ @; X- Q! s                System.out.println(id + ":" + Globals.env.getCurrentTime());2 a  w0 u# O# n, d1 M- e5 \, P
        }; g( J# o% o1 e* A: F' W  w
}% C- _0 ]( i. A5 ~; N* T9 B

+ ?3 m, U2 `1 A8 N2 W: Y5 P+ Fpublic class ActionGroupDemo extends SwarmImpl {
( Y1 O! N! l. u; s/ D7 ^, C        ScheduleImpl schedule;( Y; Q. d; O$ ^: E; D
        ActionGroupImpl actionGroup;
8 w5 a6 B) P+ L- U, I! e6 L  t        ListImpl list;% \" {( ?, T0 s: C( j8 g
        char Id = 'a';+ Z1 K- P% X8 J) M

; y4 m, f3 E7 H4 p& u4 U: \        ActionGroupDemo(Zone aZone) {8 G( e! B0 J% j, I6 ]' x9 I
                super(aZone);* c& b/ Z5 U! q8 s' q
                list = new ListImpl(aZone);1 r0 V- P! v3 n3 d+ c
                swarmSetp();
/ C, b( Z: c" y, q& e5 N# W                actionGroup = new ActionGroupImpl(aZone);
# G% _% y9 L" ^. E                schedule = new ScheduleImpl(aZone);* [* T9 L: ]# P9 c8 [
                try {7 P3 ~# e. o: c7 I% i8 R8 d) Q
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 H: {, V) V5 V8 e
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& B$ f7 U  g- {  L' ?! u. F                        + o0 J" B& b/ `( ?! ^
                        actionGroup.createActionForEach$message(list, agentSel);& i& S( o' u  b  c( ~3 w
                        actionGroup.createActionTo$message(this, swarmSel);
  c; @1 U5 T! O                        schedule.at$createAction(0, actionGroup);
: O! q4 T2 g2 m                        schedule.at$createAction(1, actionGroup);$ j$ G  _' k. u6 q- L. P' r
                        schedule.at$createAction(2, actionGroup);
* _# _, [, S2 U5 ]' b( e" b
4 u# d) C0 ~! M                } catch (Exception e) {8 a' r- D5 T* f1 c6 V
                        e.printStackTrace(System.err);, `% v7 f# h' P: _7 _
                        //System.out.println(e);
4 ^2 v9 T. j  j3 }                        System.exit(1);
0 i) t+ W& a; e& l% b. q% x                }. }1 g2 ~+ k; g6 H; [0 h2 ~9 X1 Y

/ a' k# i* C3 R( b+ L2 v; C7 W  j: P* y
        }
7 Q: }- }0 {" F( ^  j* c" U  u2 P) f& ]+ R
        private void swarmSetp() {/ i0 I$ s0 @# w/ O; V' a. F2 s# M
                list.addLast(new Agent(Id));
% |/ j3 g( ?9 x3 v                Id++;
+ n% _8 C4 x: S; r' R- a7 p        }* D! R. f, w3 z: `  O9 R9 y6 ]

  {' }2 O5 ^* h4 ^& V  Y/ K        public Activity activateIn(Swarm context) {
( |" B# T# c' ]( K  \0 U' U. [8 }! X                super.activateIn(context);4 v9 \( L& r2 S
                schedule.activateIn(this);
5 P  C: d1 s* m- m. w! H' e                return getActivity();4 k+ d/ r0 p1 t3 \' B4 P
        }
( m7 n9 L; S* |9 {5 a. ]) O/ h5 ]! q+ a, g
        public static void main(String[] args) {) p7 R: |" Y, |
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 p1 k8 @9 g% H
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 w0 J5 U, b# D# }9 q, R
                swarms.buildObjects();/ J# A9 P& k' b$ a" ?
                swarms.buildActions();& z# p, R1 U2 t  C0 U9 A; ~
                swarms.activateIn(null).run();' s% `3 C2 a) c9 M" H5 L
        }
- f+ {; Y3 J; ]+ d9 a) \9 o9 z. P# Z9 S/ Z( y9 H5 A
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-3 21:01 , Processed in 0.015878 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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