设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13051|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& g# |$ W, u+ ~+ g1 W( c% D  w$ n8 ^  [+ y# O1 R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% L' L+ _8 N6 R" ]( g8 W
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 E* Q+ x, X4 q7 o, w9 C. Y9 }+ U
swarm.SignatureNotFoundException
2 {. q: D3 X5 `1 n        at swarm.Selector.<init>(Selector.java:76)
: T# u* P, w) H2 @7 }        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 B, n4 m8 p, m* |        at ActionGroupDemo.main(ActionGroupDemo.java:67)( I. L& [) q: L

6 |! i- `% F: `7 o5 k' u0 F" r: N2 ?
8 p2 V& f/ @3 k4 _; }7 cimport swarm.objectbase.SwarmImpl;
, F9 j! a. l3 w2 |, g# L4 D9 Mimport swarm.objectbase.Swarm;
/ j' l2 z7 _% b1 _& Uimport swarm.activity.ScheduleImpl;- R# h; U8 k* J
import swarm.activity.Activity;
- ^: c" k1 @7 L/ i! Eimport swarm.activity.ActionGroupImpl;
4 Z: a) T& F7 t# ?import swarm.collections.ListImpl;
* u) }- q7 K3 n, W8 h/ I, s. H! z2 ?import swarm.defobj.Zone; . M9 a/ f  e3 \$ C4 j0 b
import swarm.Globals;
7 I. T( W% k  Kimport swarm.Selector;
: u) [9 [7 V+ R' N8 rimport swarm.activity.ActionGroup; % \- _* `+ d2 O5 H
class Agent {* X, a. m5 O" M( X) Z6 u1 S1 V/ R
        char id;4 J3 E5 [/ o! X$ @7 G3 v5 P

; h( m7 K7 X' z- z- @        Agent(char id) {
; P& i" b$ Y8 b6 h0 Y; O                this.id = id;3 a/ Z, |, Z  f+ c
        }- X" ~$ ^% B7 Z1 }! x3 U4 w6 s. ^2 a4 Y
# G/ y( b; R2 I2 ~( I3 p5 e; T3 h
        public void agentStep() {
7 R, P+ d: w  |( r1 t. h- @5 b" U3 x                System.out.println(id + ":" + Globals.env.getCurrentTime());
* n7 }2 t- p1 j1 N        }8 @0 c  X) @1 j: a" _$ L
}7 ]+ C) _) v: s; c. C4 F

% p& y; ~; J: o5 f0 apublic class ActionGroupDemo extends SwarmImpl {
7 K8 M+ X& Z$ a" q: F# n8 p5 J# g        ScheduleImpl schedule;
& `/ u, s7 o2 h' y        ActionGroupImpl actionGroup;
- m, ?* I% G4 F! V        ListImpl list;" X$ {' s% M! j6 t
        char Id = 'a';
$ p+ B' a% s$ t
5 a( Q. u8 A( C, b. t. f        ActionGroupDemo(Zone aZone) {8 m  h2 P+ ^+ v( n/ O! |: D6 u
                super(aZone);$ i7 s# f! ~# [5 ]6 O2 ?
                list = new ListImpl(aZone);
6 B/ p% U1 s! l+ O! n) \2 @  m0 {                swarmSetp();+ O5 l! V9 X4 `* L  B
                actionGroup = new ActionGroupImpl(aZone);
0 E. l0 B% E6 p3 G# u( }                schedule = new ScheduleImpl(aZone);0 P* y1 F, O  k5 f9 f4 d7 x* [+ J
                try {; M6 u) ^( J( @( ]7 h8 s4 n0 `+ o- s/ u
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 ]$ y/ N5 j0 O" w
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 O" ^+ ?* a7 P, k1 [) K4 Q
                        
9 H# A: ?; F; |9 B% d& |  R                        actionGroup.createActionForEach$message(list, agentSel);) X  r% y8 h; m
                        actionGroup.createActionTo$message(this, swarmSel);
& i; g9 y2 V+ v. K5 e                        schedule.at$createAction(0, actionGroup);
, s1 ?" J! ], [5 o( V$ |$ V                        schedule.at$createAction(1, actionGroup);2 p9 G. D/ e1 X# L3 q* H
                        schedule.at$createAction(2, actionGroup);7 ^5 q3 j; A8 V+ {) `

- w" _/ x% K+ l. a# |% P7 t. l& M                } catch (Exception e) {
* d: }' V! U8 J6 T( x  y' N2 f                        e.printStackTrace(System.err);
6 N5 Y' K/ o4 m5 J) n                        //System.out.println(e);
9 z+ X' I1 l. g( Q' v; R) l1 `                        System.exit(1);, u, y0 \6 g! J4 |# ?
                }
* @+ w5 R' u8 R3 Z/ P$ _/ q' Y# N) |' w. p/ l* H
3 S& }& b4 V+ e
        }
" _! F. `7 K; o+ o0 K- K* k$ v9 c# |% M5 }3 Q
        private void swarmSetp() {" D' J" Q  ?9 m. \
                list.addLast(new Agent(Id));, D2 C8 N% P; v7 ~7 E7 C, `3 l
                Id++;
8 ]9 [' i  s1 H1 Q" E" {2 K        }
( E5 ]- D' s5 c) c$ G6 h
7 {% c: K" D8 E/ g/ t  }5 X        public Activity activateIn(Swarm context) {5 s4 g3 Y' i$ T8 g
                super.activateIn(context);
) `0 O5 b. F0 t% P$ C! L8 X9 a                schedule.activateIn(this);  ~* h! e: {2 e6 [3 X/ X+ N/ {
                return getActivity();( x4 M% s( \; ~6 l" e
        }0 Q+ E3 Y  l( `& n& J( r+ W# D

  G- \# X( s+ g3 W; r. I- C+ @        public static void main(String[] args) {+ o1 D6 V4 M% L! G% y$ ~; e' S# s
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; d: L0 V$ X; q& P                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ K4 ]/ _. y; ^% u+ m% j
                swarms.buildObjects();
+ V- V( S& Z7 `- t% J                swarms.buildActions();6 f. G& b: ^- B2 i: x9 V
                swarms.activateIn(null).run();  d/ b: X. Z) Y0 d
        }$ e6 k& F- |  u
# I8 k! M3 p5 s2 t% K
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-27 01:35 , Processed in 0.017575 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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