设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12034|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: Y0 n$ G' h7 ~, {- [5 g. w
2 L/ ]; d- D# A" \7 {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 `" z' ^2 _% R3 ?
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" Z$ a8 S. Q- w: C, Z* ^8 Mswarm.SignatureNotFoundException% ]( U' B; ]$ E$ w& t+ h5 r
        at swarm.Selector.<init>(Selector.java:76)
1 i, {) o: _3 B' E! J+ ~9 Q. V$ E        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' ]8 s  _; K/ {3 h. K6 @  ?        at ActionGroupDemo.main(ActionGroupDemo.java:67)
% I9 ?  j$ S. @; j4 x
5 l" ^: S# j$ U/ O" L4 [; H# y0 ^' l4 L8 b3 g: h* w
import swarm.objectbase.SwarmImpl;$ g* g7 T3 i8 n5 B3 \
import swarm.objectbase.Swarm;
, ^) ^9 E8 c8 Uimport swarm.activity.ScheduleImpl;- F; [. ~" l# L) O! |
import swarm.activity.Activity;/ m+ a* q  H2 B! _) k
import swarm.activity.ActionGroupImpl;
8 @9 I+ {. z! R; I  Z6 ^import swarm.collections.ListImpl;0 B2 [0 b. s3 H4 ?) s9 H# x& G
import swarm.defobj.Zone; 0 |  h- o; v$ C$ h' i
import swarm.Globals;. U' v( D# Y# T0 Z
import swarm.Selector;8 |7 y* p- V3 G% g  {8 @* q
import swarm.activity.ActionGroup;
) L+ e4 T3 ~' O$ L. ^2 \, ~3 ]class Agent {; k9 p3 T4 [/ V7 R
        char id;8 r& E# ?# }7 m4 E

: w+ {: N1 t$ A+ S  {" i% B        Agent(char id) {3 z# M  o, m3 ^, f+ d* S# }7 J% S
                this.id = id;# H, d$ c$ R0 N& W5 ~$ D8 W+ f
        }
- t) A; x3 R" \/ |5 Y) q9 R3 \- L' p! `1 \6 U5 D8 b8 P
        public void agentStep() {
. L2 C, c5 R' B/ A, B& V) h                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 e* |, W' H  C        }& i3 e* V+ k' q; X7 U& B' W
}
; N3 {' _$ T6 x) Z: B8 S( i* @0 r6 W" V" Z% Q4 Y6 i
public class ActionGroupDemo extends SwarmImpl {
# ?5 Y" g# I; w' r        ScheduleImpl schedule;
+ F3 j, ]' Q; @: Z& r* T        ActionGroupImpl actionGroup;
  s) ?4 B. h1 V* L        ListImpl list;/ N* x6 j& D1 T
        char Id = 'a';
- W7 u. r  P" z+ I
7 U. V: k. s# {+ X        ActionGroupDemo(Zone aZone) {) P9 C2 W9 Z$ d
                super(aZone);
1 a' F& v, ]4 ?! f, k, n' ~                list = new ListImpl(aZone);1 _, `5 E- E, T: _
                swarmSetp();& z; v7 L: @9 g. U8 z2 h
                actionGroup = new ActionGroupImpl(aZone);* u- F, X; [. @# q( r2 b/ J
                schedule = new ScheduleImpl(aZone);
9 C; @! O1 B# m4 i3 n! w9 i; Q  x                try {- P1 W" J- e: R  U
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);# s. N$ H8 t5 J6 }3 d# l4 {( p
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" s8 V( L" @3 H& |* J( w7 O
                        
* d% @7 h( T- S$ \: Z% O5 b                        actionGroup.createActionForEach$message(list, agentSel);
" f) L8 t9 r, h) ^5 @* W1 i                        actionGroup.createActionTo$message(this, swarmSel);
: K# F" g' h& b" z& V& m0 m) z                        schedule.at$createAction(0, actionGroup);
, m8 |: h5 f3 b8 |/ r1 C                        schedule.at$createAction(1, actionGroup);, f) Y, B) p/ K1 H- C
                        schedule.at$createAction(2, actionGroup);$ s- `% y  O! t5 Q! J' e

2 y4 H# t* W4 ^8 L8 e' W                } catch (Exception e) {& Q& P6 o' I1 E0 b* D% t# s6 r( T
                        e.printStackTrace(System.err);
/ Z# \6 u2 u; q                        //System.out.println(e);' K- Z; S( ?: |& i; u) t
                        System.exit(1);; G: O" \5 c8 i( D) s+ G  x+ D1 p+ F6 J
                }, m) f* Z+ j% K5 u& E

9 N9 b& I- t% Z: n  ^3 x. L, v2 w; Z7 ^- ~! ^; L9 i
        }% f. U- M: {# H  j. X( J
2 W) {: h  Z# _5 r7 m, o2 H4 N
        private void swarmSetp() {) ^1 D8 _2 B# F. W1 A
                list.addLast(new Agent(Id));
- y! Y. U- h- K+ @' K                Id++;$ A! N  z- P) s: J
        }
, S2 B  e9 Q0 r0 S; p+ J, V! f
/ j1 U7 ~( d$ u! I8 V) |& i4 e        public Activity activateIn(Swarm context) {
  P3 x8 x( H3 D* e2 [7 M+ ?: N                super.activateIn(context);2 I6 q- L2 b8 h9 a# o$ V+ ]
                schedule.activateIn(this);
4 d5 x- J2 w3 J0 w# ~                return getActivity();
! v1 L6 O; a# T! I0 ?5 l! y$ d        }
& F+ }. x/ ]  m
- K  [& L: W, F* T& @0 |        public static void main(String[] args) {/ t- [# T" n. b: ?
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  c7 r# |( ?# n7 X                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  ~; h4 C' X: {) }1 H% X9 V0 L                swarms.buildObjects();
# |; `8 h- D3 C4 I: t- E: u4 _                swarms.buildActions();5 ~. g5 p  Z6 C9 a. d+ ?
                swarms.activateIn(null).run();
7 b8 _0 }: _5 [7 S$ L+ j9 w! D        }
9 E& Y1 V( l0 S. L: T3 l- [6 d8 j& U7 \/ z: p1 r7 T( ?
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-28 19:26 , Processed in 0.015469 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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