设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13389|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + x; w7 R* |8 ^* @! |8 O0 v5 m" T
; y* j' z- h9 ~6 O$ R% {/ |- [4 [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 S5 r+ w3 p. l; r; [
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& B, I/ J: W; ~# m+ b# k$ J# |swarm.SignatureNotFoundException5 m5 X$ i4 t' E, n: s  W
        at swarm.Selector.<init>(Selector.java:76)% l3 S2 I  H; }5 N5 w' s- y$ L
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" ~& @" U# f% l! d
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 e7 ~7 V# [. R3 ^2 _4 D. n9 I  `$ N2 u& i0 n* k

0 b; u" t) B8 }' t+ W% g7 l4 bimport swarm.objectbase.SwarmImpl;
/ t3 |1 [# p% Z+ v" L- Uimport swarm.objectbase.Swarm;
" B9 N( N! |7 A9 N* ?/ ]  m  p  wimport swarm.activity.ScheduleImpl;
) _6 W) Y( |1 \; K. dimport swarm.activity.Activity;: f4 C3 c0 W' q3 o7 O+ x0 x
import swarm.activity.ActionGroupImpl;; \! x4 ]# e% O6 y& c8 X
import swarm.collections.ListImpl;8 a# b% V  t. w
import swarm.defobj.Zone;
7 K# o; p2 W( @9 B( P; \import swarm.Globals;
! U, t8 c" u0 h6 n4 ?import swarm.Selector;
" n/ X  @. r( vimport swarm.activity.ActionGroup; 4 f# C3 f7 ]" i/ z% ]
class Agent {
% d$ X6 l* o; _* r3 P8 x        char id;
4 K5 z, c, A+ G2 P7 K! @1 L; s$ r: V
        Agent(char id) {: j( p1 j" I& u: Q- ^  W; E( \
                this.id = id;  _- M9 `4 R+ k" x' N( O% a
        }
! _  v0 f# o0 T& i9 p3 V$ E- ?8 U8 c# @& b) C
        public void agentStep() {+ [5 z5 E: \( E: X2 q% E" \
                System.out.println(id + ":" + Globals.env.getCurrentTime());
& t* g: T- ~. A, V3 y: s        }2 E. g% c& e3 i
}0 Q# a9 B# @6 [2 h4 V7 A& ^
9 s/ @" E1 S9 O/ `$ N3 g
public class ActionGroupDemo extends SwarmImpl {2 Y/ k7 ?1 I% g+ i
        ScheduleImpl schedule;3 j- L7 {) O5 T, z# m% j. u6 I
        ActionGroupImpl actionGroup;$ D+ F% n, T- w# ^, p
        ListImpl list;
0 n) s; |6 u1 x" X, Z& v( j6 I7 ^        char Id = 'a';7 e% j( K7 d: g& r( u5 T! W+ {
& L! s0 u$ r$ k2 L( R4 T6 n
        ActionGroupDemo(Zone aZone) {
/ e7 f5 i! m. Q                super(aZone);
4 M! B; z+ `( W- P( I( \                list = new ListImpl(aZone);
, D+ m$ A: h  d  Q3 N                swarmSetp();
" B& H7 X. a( e+ k& X                actionGroup = new ActionGroupImpl(aZone);
- X2 ?9 l. T* d2 t& W                schedule = new ScheduleImpl(aZone);8 O  @3 V, x! E
                try {- L4 N5 x2 J" z) J6 v5 ^
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! l( a5 j4 S( I
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& g% P- t& w$ G% D9 c                        0 j3 Z3 Q5 v+ ]# E5 Q8 Q
                        actionGroup.createActionForEach$message(list, agentSel);# n7 ^, Q0 U0 O- H: c  H
                        actionGroup.createActionTo$message(this, swarmSel);$ C6 k9 z$ ?5 Q6 {) U( p) G) m
                        schedule.at$createAction(0, actionGroup);9 W& l% X# X9 ^! G1 {7 X* y
                        schedule.at$createAction(1, actionGroup);; U% o( Z+ Z0 E3 M! q9 g
                        schedule.at$createAction(2, actionGroup);, B/ C3 B1 H! ^

' f' p/ k7 e3 B                } catch (Exception e) {
* P4 F( B0 O  i4 z2 i                        e.printStackTrace(System.err);
0 K1 u/ s2 d: G. k$ ?+ b                        //System.out.println(e);
2 L) K9 K/ \/ s" \1 Z  S                        System.exit(1);
7 B" @2 k% n7 L; v1 P                }
, v& y9 G0 \5 o, j. ]
: R* v7 j5 }+ r7 T2 }) c! l0 V8 N' t9 l' Y9 V3 Q! n/ m3 m: N- Q! K6 i
        }7 f0 S" ?% r/ P5 `

( `/ b- I5 Z% L, O1 [! a        private void swarmSetp() {
9 W2 D5 l! C6 R6 l- N                list.addLast(new Agent(Id));, ]5 C+ m! v  u+ L" e, N7 z
                Id++;3 Y, l" o% r2 M  }
        }, ~, H) l# e0 j7 y3 d

* s5 u- P' V! |/ K4 G        public Activity activateIn(Swarm context) {
- o/ S$ w: J0 O# V5 y* _                super.activateIn(context);
, i" ~+ k' {  u1 G2 J                schedule.activateIn(this);
5 P  \: {$ D' f) R                return getActivity();
( ?, `$ s" D. [/ A        }
' }. ]1 r" `) ]( h& t2 n/ q. ]8 N! u5 M, b
        public static void main(String[] args) {
2 ?2 X$ J& t. U5 f; B6 }                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, y2 V, R% t$ f2 Q+ s6 O3 ~
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ l1 g9 Y7 x; q% v5 A+ N, i                swarms.buildObjects();
4 g. i; {! @! ^% U                swarms.buildActions();
5 O5 ]% b7 a3 A                swarms.activateIn(null).run();
3 \/ Z& A1 g. _. b        }! G8 {. ?8 M4 _! f0 e$ P! Q1 v/ Y1 X

$ h; n/ Q  ?% H: X0 }1 [}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-5 17:51 , Processed in 0.015695 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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