设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9260|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / T6 A2 m% u$ r$ ?* X! C/ a# B
' Q( Y8 g; y* q1 x7 N0 O+ d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ a/ ^4 M% v; M以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& [4 j: ^( D) d: R# ^9 p( |1 x
swarm.SignatureNotFoundException
7 ?  R  @, |- W+ y9 N+ n- L        at swarm.Selector.<init>(Selector.java:76)
# b4 K0 c( r5 d+ j7 M        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 R& b* W( E+ |* G; ?# u- O
        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 _' h2 b6 u1 O3 d: Q# |" T
3 l+ R: A* r. E) ]: ~  l: d* M
$ f, r: A1 w& x) B8 x* E
import swarm.objectbase.SwarmImpl;
. S4 Z9 |1 t0 i3 }+ timport swarm.objectbase.Swarm;" |2 L) |" Q4 O' d" M
import swarm.activity.ScheduleImpl;% V0 b; P7 B- N% T: H
import swarm.activity.Activity;& p) w* V& e9 P( K3 @- p1 _% s
import swarm.activity.ActionGroupImpl;
9 X& |& h% V* e6 W6 cimport swarm.collections.ListImpl;/ b: q3 ?1 l% g; f. r; U# M0 p
import swarm.defobj.Zone; / k- G) K: {: U; v$ q4 |/ `
import swarm.Globals;: {- d+ t6 g5 Z1 D, P! A
import swarm.Selector;
( _0 a, Z$ H- Cimport swarm.activity.ActionGroup;
; ^' @1 c$ T2 Q( }+ _class Agent {  D0 i  l% Q# V2 Y+ x. C
        char id;& ]5 j- u6 W8 r0 p. a) I( A

! [4 Q' e; G# _1 R6 P        Agent(char id) {
+ w& ~3 [2 H5 e1 b1 f7 D3 O                this.id = id;" o+ F0 U5 U: p9 y% z7 F& K  W
        }
# @7 \7 s: |; T6 t) f+ ?' T0 q  g6 C3 Y% Q  s  N2 ^: `! ?' p
        public void agentStep() {5 P3 `) U4 |$ ?/ K6 ~$ x4 E
                System.out.println(id + ":" + Globals.env.getCurrentTime());" X3 a  x4 W4 V$ m& a! ?3 D
        }7 L/ S; U2 q( C
}
6 z4 \7 W6 H% P
) v4 T" t  F! o4 D4 E- Wpublic class ActionGroupDemo extends SwarmImpl {
$ K) a. E$ [8 u4 ^/ |        ScheduleImpl schedule;
; E2 L+ \% G, R: w        ActionGroupImpl actionGroup;+ k% t0 \7 |4 ?9 `& h
        ListImpl list;
( z9 F, z: A: O        char Id = 'a';
5 H. P( Z  D. _
* g' M4 R5 ?: g) [3 P        ActionGroupDemo(Zone aZone) {
3 j3 u6 }) I8 o6 u' t$ m                super(aZone);/ s% N  g1 O7 p: B, F
                list = new ListImpl(aZone);
. Q: |( @: d% l$ \. Z- O                swarmSetp();! E( F4 T& O& j7 B4 H
                actionGroup = new ActionGroupImpl(aZone);
% H( I! {0 O% R. N* P                schedule = new ScheduleImpl(aZone);2 ?/ \4 A9 i1 V( l6 q
                try {% G/ w* e) N- q5 }
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* |1 o& V/ |# M. n! \
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, M' [8 U8 ^8 n; u. m6 Y                        + N) }7 C; M+ h8 j
                        actionGroup.createActionForEach$message(list, agentSel);
3 q( Q1 {$ `* ]! R/ z                        actionGroup.createActionTo$message(this, swarmSel);
: q( M; P8 H, S% a5 |                        schedule.at$createAction(0, actionGroup);' o7 j/ c; V5 {: Q! {
                        schedule.at$createAction(1, actionGroup);: P3 I; J1 T+ ^4 `+ ^: f
                        schedule.at$createAction(2, actionGroup);
9 z/ x! ?' S2 \2 `! P9 }$ S0 d( s- B- |8 U) w
                } catch (Exception e) {
' b! U) o" L' `/ A; Q4 l! `% C6 k: N                        e.printStackTrace(System.err);5 A9 m! G# @1 q& O
                        //System.out.println(e);) C* G: ^, t# X5 {! z5 m
                        System.exit(1);
7 {4 n$ z% d; M* x% f( F9 @                }
" B4 Y' }: L* M; e( o2 y8 ~: G1 M! V9 R/ N# p
6 W9 x% H, i! @. Y6 b; R0 P
        }/ f5 F4 G6 P3 Z; J
! u4 z3 E, h) W, L
        private void swarmSetp() {2 o  l9 n% z  c/ v# m
                list.addLast(new Agent(Id));
" S. B2 X4 U; |& e# G: D% Z' s                Id++;3 z/ u7 T( N2 e  k2 B2 A
        }  @2 H- L, T% y

, q6 \# M9 V. s& P7 F        public Activity activateIn(Swarm context) {' z) G# k. t  j; F" p/ Q8 W
                super.activateIn(context);  e/ |& K5 A9 U# ?, b' k' R6 Y# _
                schedule.activateIn(this);
8 }7 {) a: `  ~: b                return getActivity();
: r6 E. u5 H& j        }
$ v; z. t3 v" S; V5 C1 w4 x" w. S9 J
        public static void main(String[] args) {9 |; ~: [; Z" s, w8 Q+ d3 v
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 h) N8 n' D+ n+ |" U7 `- t1 d& S
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, N: u& d: Y- l3 R- B1 z* u0 c# l                swarms.buildObjects();
& L  K  B/ r+ _1 ~                swarms.buildActions();
  I" U7 A. [; ~3 i* A  c' v                swarms.activateIn(null).run();: X. a( r5 g, U) S. k: V6 v
        }
/ b; H7 t9 i: F) P1 M5 u1 ?5 c; o/ I4 M8 {) i
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-6 17:58 , Processed in 0.013279 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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