设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11816|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % K3 w' B& M. a
7 T" g' E8 P2 R+ k
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ F8 z( M1 \5 T- Z8 w. I7 i1 v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' x/ N5 T2 b& a) O) m6 X
swarm.SignatureNotFoundException
* @5 P. G# C' C5 y( R9 Y        at swarm.Selector.<init>(Selector.java:76)! v; g  @6 y4 M5 H# ^' L
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 L) I! c" X  u: F# i) K, m+ X
        at ActionGroupDemo.main(ActionGroupDemo.java:67)5 o9 ?' T; D$ r, I$ o! U- F* ~

( Z  b+ R* t' l) Y# N6 ~- O3 x  B' g9 F  e" H! {" H# L
import swarm.objectbase.SwarmImpl;
* A6 m; O2 w. V3 vimport swarm.objectbase.Swarm;: f  P% l5 g3 y
import swarm.activity.ScheduleImpl;9 x) |1 N, K$ L( R2 }  y
import swarm.activity.Activity;+ S) h& B, _. `' f. \, w
import swarm.activity.ActionGroupImpl;
3 A$ ~$ O. ?7 B7 |import swarm.collections.ListImpl;/ D( `: A* B1 ]% Y. D$ e
import swarm.defobj.Zone; 6 l$ _8 D3 B4 x/ N" @9 E6 Y
import swarm.Globals;. y+ l3 M  F1 d
import swarm.Selector;! x; |) a( ^7 Z
import swarm.activity.ActionGroup; # [) ^5 Q. U2 n1 _. K8 t
class Agent {
! V5 T) @8 q2 K1 j        char id;5 F' z, F; o+ X; t# h
4 M1 B1 N1 B, m6 u+ }
        Agent(char id) {8 h( X5 n( P' w9 n6 G  P
                this.id = id;
5 h5 W6 u& X) I. c/ E: Z- K& s+ y        }
+ E: |2 S* \* K( \+ d3 q0 `" o4 W2 b+ C* N5 a5 R
        public void agentStep() {3 w) F" e; r+ L# _; R
                System.out.println(id + ":" + Globals.env.getCurrentTime());" L4 [: v9 i1 K+ Z" }# Q6 A# _
        }) B* C6 |1 ^) h# K+ I  m
}$ }: g) d- O5 l5 B0 v

# ]9 z( w( L0 X& B) Cpublic class ActionGroupDemo extends SwarmImpl {" m- q, h' h+ H# f9 c
        ScheduleImpl schedule;: \' m0 T. V/ f  |. x
        ActionGroupImpl actionGroup;: A& B8 q, C' d- f4 f# O* @
        ListImpl list;2 K) Q& n' B3 ~: X/ z3 R
        char Id = 'a';, p& H, E  O3 J$ R
5 N/ I1 p/ @9 I4 @' M; a% p
        ActionGroupDemo(Zone aZone) {
) k# {4 x' E6 p; L                super(aZone);
8 P6 F, h9 a! ~6 r* f4 I                list = new ListImpl(aZone);
+ N1 ]0 V7 g; Z9 M                swarmSetp();# a7 n& `9 q. W
                actionGroup = new ActionGroupImpl(aZone);  S' Z0 F# q  E3 g* Q' x1 H
                schedule = new ScheduleImpl(aZone);
" ^$ E! x: G" |7 B: m+ D# \; m5 h+ C- ^                try {4 O5 e7 m( W* t& t. _
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: C8 g! T( I; K; r6 r  D$ i; K* }, ~9 G
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% ^/ ~* y. f1 n                        
5 U6 A- ]) C( o% I2 x                        actionGroup.createActionForEach$message(list, agentSel);4 s" l2 }: K! m3 b, Z, F& y- U
                        actionGroup.createActionTo$message(this, swarmSel);
: o9 }0 w# l4 K3 t                        schedule.at$createAction(0, actionGroup);
5 E; \+ O8 N+ p+ e6 X                        schedule.at$createAction(1, actionGroup);$ E+ y0 A: H. T5 g: J. F* a
                        schedule.at$createAction(2, actionGroup);
5 o& k2 S1 P2 N; y3 {- v2 P3 n" ^/ y; ?9 L+ a
                } catch (Exception e) {3 K7 P  w8 r- v& X: `
                        e.printStackTrace(System.err);
$ x5 E: H, W/ T7 q; U' ?+ |                        //System.out.println(e);0 Y% q* O' T0 V
                        System.exit(1);) |; ?3 k- I. c; O0 T. ^
                }
/ D0 |+ B& P# m9 N7 P2 q1 V
  B7 {  v0 [1 T
! K* V; N0 p% m        }
: w' u- l1 W0 E( |0 t% i$ E  p
1 h; ?; `) Z" n3 J3 W+ O: W9 y        private void swarmSetp() {; h/ x( X/ G. G; P0 L, m6 p
                list.addLast(new Agent(Id));
0 G  x8 n. O- I  t                Id++;: _* `' ]1 F* r% V6 R+ N3 a
        }+ j  W- }! i0 u
' p% L0 s0 q, E# L& X3 k$ a
        public Activity activateIn(Swarm context) {/ ]& `0 c9 r# t- I1 l
                super.activateIn(context);
3 r, c' D2 z. k0 @' M                schedule.activateIn(this);
; H8 X9 {1 A* y+ U/ b                return getActivity();
, E7 ~' s" n+ G8 S( P1 p        }0 p/ T2 X5 w1 F, q1 I  {+ {/ O, r

0 m! _" P! f/ z3 L7 ^/ Q; g4 Q        public static void main(String[] args) {
4 J/ e) {% W% s+ N; r) N% w0 @                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# @% j. W- G* u# p- P* ^
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 P! \7 ?- O0 P: w9 r7 [- Y                swarms.buildObjects();
' B5 D- Z: {& [  \) Z8 E9 @6 u                swarms.buildActions();6 q5 J5 K5 K: S$ q( U
                swarms.activateIn(null).run();
& E+ S0 q5 p4 o( u1 c        }9 W/ J* ~1 S& ~/ o$ x

- j9 H. u; `" Z. L}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-22 15:26 , Processed in 0.013573 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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