设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8814|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : |, ^5 c% R2 v/ {! T1 J. A
* E  Q. B' V. A7 v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 G% a! W' G4 d9 H3 s& Z8 e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% H# Y- [* F( f3 z6 _5 D4 J: l2 v/ Kswarm.SignatureNotFoundException
4 {* X1 y1 I- {        at swarm.Selector.<init>(Selector.java:76)
/ K8 G* Q. H, T8 Z5 d* M        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  @4 j! L+ E- Y. R8 K! C( |        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ ]& k7 s! h* l

5 L1 U8 g& M/ Z5 q9 p  {( N0 D
import swarm.objectbase.SwarmImpl;
$ Q1 p* X! M+ Z0 v: b& ~import swarm.objectbase.Swarm;) C& _; W# y* p7 F, k
import swarm.activity.ScheduleImpl;
; ^0 Q8 g7 E2 d! e  h* ?import swarm.activity.Activity;9 Q4 ~; A* T. j; q
import swarm.activity.ActionGroupImpl;
3 T5 g- q! P$ s- Ximport swarm.collections.ListImpl;# V* C' ^5 G  _8 C4 Y, M
import swarm.defobj.Zone; ' p. @0 p6 n) J
import swarm.Globals;
/ _) r1 x, F2 M* H0 Z; r6 ~  l2 F. Aimport swarm.Selector;
: r" N: w  l' A, \$ Aimport swarm.activity.ActionGroup; * a3 F2 J3 b8 q7 j
class Agent {
! Z9 C, w" B1 K+ `        char id;
! j& |' W, R: L
* w' B" U! t+ {2 K, O1 m/ \        Agent(char id) {
8 h3 n8 ~* F( G' u  g                this.id = id;3 e$ W# f& g0 r8 h8 m
        }: o) `6 a/ f" u. |
0 g: G2 I$ R& e& [% [; y9 g* f
        public void agentStep() {
1 O; Q) f# L- Q, W& F                System.out.println(id + ":" + Globals.env.getCurrentTime());
! ~6 T4 V4 `" ?  y        }
  S, E3 V1 C! e}1 g3 E% P' O9 [6 C+ w

6 G$ T" k# |, }, @9 i) k: O: `# Tpublic class ActionGroupDemo extends SwarmImpl {
0 X; G$ {0 f" o2 f# c        ScheduleImpl schedule;. {( Q4 L, P6 S( [5 F  e
        ActionGroupImpl actionGroup;
" {& G1 {9 S* B" i2 h        ListImpl list;
. K' c5 V% O* J1 X        char Id = 'a';0 Z. w6 x& s- {
; R" V4 _: O6 @( d% V: F
        ActionGroupDemo(Zone aZone) {& }% g* z0 S& i$ `2 P
                super(aZone);
" Q# n* Y! b7 x: C                list = new ListImpl(aZone);- g( A( F9 h5 @
                swarmSetp();
9 h- W9 f7 U5 X% c  w                actionGroup = new ActionGroupImpl(aZone);2 ~1 A$ c: h% `* Q
                schedule = new ScheduleImpl(aZone);
, a" b) y) F" v- e$ C8 t                try {" V, l% e8 s1 n! \9 w) s/ N
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 Z# ]! \/ e( ?" s0 _; d2 I                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, b6 f, u7 l. A9 B- w, b
                        2 W. c. ]# Q# ?5 K& r+ n7 }
                        actionGroup.createActionForEach$message(list, agentSel);
* t- x5 u& i" {7 q6 I                        actionGroup.createActionTo$message(this, swarmSel);& v5 D/ X; K( T; M
                        schedule.at$createAction(0, actionGroup);
; I+ ~  x, o( w8 S" w                        schedule.at$createAction(1, actionGroup);
* l" q, o/ G; c) T, E" D6 Y                        schedule.at$createAction(2, actionGroup);
( [* W5 Z5 L2 G4 l3 K
. I5 O* Y5 v; c2 ]4 j, h: Q                } catch (Exception e) {% n' Y( a0 x; V4 L% p( z' p
                        e.printStackTrace(System.err);
2 \- k0 M5 U/ f* A8 i# {' V                        //System.out.println(e);
; {* S9 Q5 z! S5 f4 n                        System.exit(1);
$ U. T3 H- b2 R- s                }* w- u0 k" ]* i" v9 T
& ]' @& V' C# v) Q- Z8 W9 p

% G( q) o: v. u) w7 w$ T* M1 _        }' Z0 N6 S8 a/ b7 X0 s' n
" B( @& c2 \& `2 ]# n3 ~
        private void swarmSetp() {
; f/ y) V( C2 _2 s& N( q5 I                list.addLast(new Agent(Id));4 O9 j) }7 |' d7 z' x9 Q0 ?0 \
                Id++;
9 q# |4 I  u* t! g5 _- |        }' `& X& G7 i+ ~. r5 X# K* Z, h
( A% Q9 k4 T. f  v
        public Activity activateIn(Swarm context) {* g) z1 ^- W$ r% u) S4 e
                super.activateIn(context);/ a$ G7 x% T6 p
                schedule.activateIn(this);" L5 o5 J5 g- N* v/ F- L
                return getActivity();
/ ^, ]! `3 i# w        }) w0 |- w; r& q4 y# t- B1 K
$ K/ G: }# Q' n5 v7 E5 N( L
        public static void main(String[] args) {
! ]% a8 x  W& R) \# B                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: T& |. ?/ o) U6 d2 e# Y* J
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 ^  t5 U9 S$ w4 K0 g                swarms.buildObjects();
- H. U. T/ ]! S, O/ S                swarms.buildActions();, a6 T# I  w. V! ^3 g
                swarms.activateIn(null).run();/ T8 j" z. M9 R6 Q2 M
        }
# Z3 H- F! O0 [8 ?4 R2 [9 J: a
) l6 k6 H# c4 \- d" R' |( h. a6 c}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-23 16:34 , Processed in 0.015159 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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