设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6903|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " N) Q7 f, b  s" O

! C: X' f, o, k, x; s0 k2 H本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* J4 p9 S2 A9 s
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( P3 }4 _' N% A
swarm.SignatureNotFoundException& w& _: C, f- Y4 ]+ N3 E
        at swarm.Selector.<init>(Selector.java:76)
4 H& u$ y7 F& p) G3 U) D& H        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* G5 o; k' Y6 U
        at ActionGroupDemo.main(ActionGroupDemo.java:67)) X* }5 c6 O' }: m# Z8 X% K/ O4 E) F
5 W9 m; U5 B, W! `  }

" y% X$ C* \" ^3 F; kimport swarm.objectbase.SwarmImpl;
- U  o* G. d. k) wimport swarm.objectbase.Swarm;
! o4 G  x/ K8 R9 Cimport swarm.activity.ScheduleImpl;
( d) e; }3 `0 Fimport swarm.activity.Activity;1 s0 l( Z6 p1 l* D! x, K
import swarm.activity.ActionGroupImpl;
, S& v) _9 z9 L8 t5 O) ?import swarm.collections.ListImpl;1 o; z+ z1 ~: T9 h# c( m
import swarm.defobj.Zone; # G2 k$ K& r( r5 f% o" H
import swarm.Globals;
+ u0 O" t+ ?3 D& a, r6 Yimport swarm.Selector;
9 t! a; m" B+ t$ B1 d/ Bimport swarm.activity.ActionGroup; + _8 o  t: I- y8 m$ o0 [' v' [
class Agent {
4 @. U8 W' b6 e" d6 x        char id;+ i# x+ Q+ L9 A# r0 N$ P( ~0 C. F
+ u  ~" o# ~' }5 m
        Agent(char id) {
* |- T& G7 V. g. q9 Y" Y7 \% [1 \% ~                this.id = id;. c9 j9 i6 w) E/ ?4 }* i3 J
        }
* P) ]" g; A0 H  V
# A& c; n: l0 B  ^        public void agentStep() {
9 c* g$ W% e, E) p3 O8 z4 E7 @! P0 c                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 X' |" X# b) T+ Z, j- T        }4 L% s" v* m2 f( F' p% h. e& T! l
}
5 D. e# R) N- Q6 ^9 {- x1 A0 W1 R+ T% Z- Q* x1 I
public class ActionGroupDemo extends SwarmImpl {
& S4 W! z' k) P6 s% z9 |        ScheduleImpl schedule;
9 v' e' T) t" R4 R. O: D; M, D: ~        ActionGroupImpl actionGroup;
- l2 Q" F4 i& U, e; Y        ListImpl list;
8 a7 V; i; O4 C1 O' |5 v        char Id = 'a';; }0 \$ T; G( M  I. T% r* _
5 o3 s- \! Z' r' @: B2 ]
        ActionGroupDemo(Zone aZone) {
: V6 D( G; b% I                super(aZone);
) S; w0 d8 I# c8 w# ^9 Q" Z                list = new ListImpl(aZone);
. ]( `$ \$ J- L                swarmSetp();6 ?7 A9 v% a5 x! i/ }, j8 m
                actionGroup = new ActionGroupImpl(aZone);
- m% u* ~/ }1 G" e3 B                schedule = new ScheduleImpl(aZone);; T3 }% U! E# _8 \2 S' p1 A8 F
                try {
- E" o6 C. v3 r7 u8 }                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! T* ^& \7 q4 B' ~# e. Y; V                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 c. x% s. ^9 Z1 M0 b: G                        
# P: f: y+ R5 u+ }4 Y4 J& Q                        actionGroup.createActionForEach$message(list, agentSel);* M9 y) ~- N- O/ O, B
                        actionGroup.createActionTo$message(this, swarmSel);3 N. i3 r% I1 U+ `. W+ f
                        schedule.at$createAction(0, actionGroup);
' S* K& G+ ?: K! }% E) i                        schedule.at$createAction(1, actionGroup);
7 J( p6 h# Q" C9 g7 b                        schedule.at$createAction(2, actionGroup);. C1 y4 {" B4 o$ g" L' V
9 J7 F0 s3 g2 X3 H4 h  {/ W* T
                } catch (Exception e) {% ~4 o: z3 g8 _
                        e.printStackTrace(System.err);2 G  B5 F+ P8 {- E. Z5 F# O! J/ v6 `
                        //System.out.println(e);- D) t# q& i8 L- n3 c! A
                        System.exit(1);' W  h" N  S, R4 ~6 k
                }) i3 U9 Y; y! @2 y1 y$ y) {
% i" s  q% R, Q- ~% P
. Z( a2 [4 ?1 c5 ]/ y2 D+ B
        }' ?+ s# @" }8 C% J
9 s# R. V' h; W+ W  I
        private void swarmSetp() {
5 y# X5 {0 _7 j3 \# [, _7 a                list.addLast(new Agent(Id));
' q# n, {, M/ R! O- Z3 A                Id++;
9 P6 C. n4 B  g; s2 [        }( e4 _; i2 {$ Y! W+ v
+ v# A9 X6 f" n+ t0 C
        public Activity activateIn(Swarm context) {
( ]- ]9 t0 c( s; m, v6 l                super.activateIn(context);
  p2 A# V- h0 _6 t8 A* n: X, D                schedule.activateIn(this);# g& @+ f8 `9 M9 Y* O4 H6 i
                return getActivity();
5 U; Z6 h& N9 |& W! v6 M        }
* ?' t1 D  u* r( h/ r: c% @$ t9 w. g7 U2 s0 ~
        public static void main(String[] args) {
3 E* Y. A, c7 U- w                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 Z9 V- |& \. q8 D
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* L( G& ?/ l6 N* T& z4 ^                swarms.buildObjects();# M3 g# m$ c6 S" B* {
                swarms.buildActions();
5 h! }0 D# k7 G4 ~! R                swarms.activateIn(null).run();
' l6 O" M2 E  O1 w        }
8 U/ t, N9 a7 O6 \# a4 i1 \/ w  t9 l# w  O" A, k( Z- g- o
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-12 19:44 , Processed in 0.016823 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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